Utilisation de Word - TextBox [Résolu]

Signaler
-
 Utilisateur anonyme -
Bonjour à tous,
J'utilise le code suivant pour insérer une zone de texte dans mon document Word.
MonDocument.Shapes.AddTextbox(TaRightJustify,30,25,230,110);
MonDocument.shapes.item(1).select;
puis, j'insère mon texte, je définis les lignes du cadre ... ça fonctionne très bien.

Mais, le problème que je rencontre, est le suivant: je voudrais insérer un tableau.
Donc, Comment sortir de ma zone de texte ???, je n'arrive pas, ce qui à pour résultat, d'insérer mon tableau à l'intérieur de ma zone de texte.
Pourriez-vous m'aider ?,
Cordialement.

ps: je pilote Word depuis Delphi, mais, je n'est pas réussi à créer une macro dans Word, pour faire des tests.

2 réponses

Messages postés
7380
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
15 mai 2021
122
Utilisateur anonyme
Bonjour Le Pivert;
Un grand merci pour ton aide,
mais cela ne répond pas à mon problème.
" Comment sortir de ma zone de texte ???,"
Pas de créer le tableau que je sais faire
Heureusement pour moi, j'ai l'ancienne faq, car cette nouvelle n'est pas explicite pour beaucoup d'exemples.
mais, je te remercie quand même,
cordialement
Messages postés
7380
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
15 mai 2021
122 > Utilisateur anonyme
Dans le lien que je t'ai donné il y a aussi cela:

https://word.developpez.com/faq/?page=tableaux-VBA#vba_table_ajout_espace_dessus

Ce qui donne:

Option Explicit
Private Sub CommandButton1_Click()
Dim myTB1
Set myTB1 = ActiveDocument.Shapes.AddTextbox _
 (msoTextOrientationHorizontal, 72, 72, 120, 36)
myTB1.TextFrame.TextRange = _
 "ceci est un test."
TableMult
ActiveDocument.Tables(1).Rows(1).Range.Select
Selection.SplitTable
End Sub
Sub TableMult()
Dim oTbl As Table
Dim iC As Integer
Dim iL As Integer
 
Set oTbl = ActiveDocument.Tables.Add(Range:=Selection.Range, NumRows:=10, numcolumns:=10)
For iC = 1 To 10
    For iL = 1 To 10
        oTbl.Cell(iL, iC).Range.Text = iC * iL
    Next iL
Next iC
With oTbl
    .Borders.Enable = True
    .Borders(wdBorderBottom).LineWidth = wdLineWidth050pt
    .Borders(wdBorderLeft).LineWidth = wdLineWidth050pt
    .Borders(wdBorderRight).LineWidth = wdLineWidth050pt
    .Borders(wdBorderTop).LineWidth = wdLineWidth050pt
End With
End Sub

Utilisateur anonyme >
Messages postés
7380
Date d'inscription
jeudi 13 septembre 2007
Statut
Contributeur
Dernière intervention
15 mai 2021

Bonjour Le Pivert;
Un grand merci pour ta réponse,
Je vais essayer ton code,
Je considère le problème comme résolu
Merci pour ton aide
bon codding
Très cordialement
Messages postés
15935
Date d'inscription
mardi 11 mars 2003
Statut
Contributeur
Dernière intervention
15 mai 2021
545
Utilisateur anonyme
Bonjour Whismeril,
Oui, car dans un forum je sollicite le forum delphi et dans l'autre le forum VBA Word.
D'où ma question sur les deux forums.
Car, comme je le dis bien, j'utilise Delphi pour piloter Word
cordialement