Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

  1. #1
    Inactif  
    Excel, problème avec " line, fill " d'une TextBox
    Bonjour à tous;
    J'utile les composants suivant:
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        ExcelApplication: TExcelApplication;
        ExcelWorkbook: TExcelWorkbook;
        ExcelWorksheet: TExcelWorksheet;
        ExcelChart: TExcelChart;
    Uses ...., ExcelXP, ComObj, OleServer ...;

    Je réalise dans ma feuille graphique, en bas de feuille une TextBox.
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    ExcelApplication.ActiveChart.Shapes.AddTextbox(1, 10, 420, 150, 14);    // 1,2,3,5 = Spécifie l'orientation du texte
    ExcelApplication.ActiveChart.Shapes.Item(1).TextFrame.Characters(0,0).text:= 'mon texte';
    ExcelApplication.ActiveChart.Shapes.Item(1).Visible:=(1); 
    ExcelApplication.ActiveChart.Shapes.Item(1).Rotation:=45;
    ExcelApplication.ActiveChart.Shapes.Item(1).Top:= 430;
    ExcelApplication.ActiveChart.Shapes.Item(1).Left:=5;
    ExcelApplication.ActiveChart.Shapes.Item(1).Height:= 22;

    Jusque là, pas de problème, ça fonctionne bien .

    J'aimerai définir ma zone de texte (style et couleur de ligne).
    Mais, les lignes suivantes me génèrent le message d'erreur "EAccess violation"
    E
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    4
    xcelApplication.ActiveChart.Shapes.Item(1).Fill.Visible;
    ExcelApplication.ActiveChart.Shapes.Item(1).Fill.Solid;
    ExcelApplication.ActiveChart.Shapes.Item(1).Line.DashStyle:= xlSolid; 
    ExcelApplication.ActiveChart.Shapes.Item(1).Line.BackColor.RGB:= RGB(255, 255, 255);

    message d'erreur "EAccess violation"
    Code :Sélectionner tout -Visualiser dans une fenêtre à part
    1
    2
    3
    ExcelApplication.ActiveChart.Shapes.AddShape(1,10, 10, 250, 250);
    ExcelApplication.ActiveChart.Shapes.Item(1).Line.Weight:=4;
    ExcelApplication.ActiveChart.Shapes.Item(1).Line.DashStyle:= 7;


    J'ai effectué des recherches sur le net, j'ai vu les mêmes type de code, mais, dans mon cas, ça ne marche pas,
    Quelqu'un pourrait-il me dire ou est mon erreur ?,
    En vous remercient d'avance;
    Sincères salutations à tous.

  2. #2
    Expert éminent sénior


    Faudrait vérifier déjà si les propriétés Fill, Line ... ne sont pas Unassigned ou Null
    Pourquoi ne pas utiliser la valeur de retour de AddShape au lieu de la collection ?
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Inactif  
    Bonjour ShaiLeTroll;
    Merci de m'avoir répondu.
    Je vais voir les constantes de type de forme pour un objet Shape
    Pour savoir si c'est Unassigned ou nul je sais pas encore faire je vais voir ça aussi,
    Quand aux balises de codes, avant en 2003, j'avais plaisir à surfer sur ce site, maintenant, c'est une vraie prise de tête.
    Je l'ai déjà dis aux administrateurs. D'autres sites sont bien plus simples d'utilisation
    Cordialement

  4. #4
    Expert éminent sénior
    Citation Envoyé par eric_de_bretagne Voir le message
    Je vais voir les constantes de type de forme pour un objet Shape
    Je ne vois pas de quoi il s'agit et ce que ma réponse a pu être comprise

    Citation Envoyé par eric_de_bretagne Voir le message
    Pour savoir si c'est Unassigned ou nul je sais pas encore faire je vais voir ça aussi,
    Le déboggueur le permet ou tout par contre, VarIsNull par exemple

    Citation Envoyé par eric_de_bretagne Voir le message
    Quand aux balises de codes, avant en 2003, j'avais plaisir à surfer sur ce site, maintenant, c'est une vraie prise de tête.
    Je l'ai déjà dis aux administrateurs. D'autres sites sont bien plus simples d'utilisation
    Je le trouve très simple ce site, quelques balises de formatage pour un développeur (qui beaucoup les tapent sans utiliser le menu) c'est le B.A.-BA
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

###raw>template_hook.ano_emploi###