Ajouter des tableaux dans word

Soyez le premier à donner votre avis sur cette source.

Snippet vu 7 682 fois - Téléchargée 16 fois

Contenu du snippet

Ce exemple montre comment ajouter des tableaux et comment ajouter des objet avec VB (exemple très facile pour comprendre ).

Source / Exemple :


'Enonciation des variables
Dim docword As New Word.Application

Private Sub Command1_Click()

'ouvre Word
Set docword = CreateObject("word.application")

'True pour word visible et false pour le mettre en arrière plan
    docword.Visible = True

    docword.DisplayAlerts = False   'évite les erreurs de traitement
    docword.Documents.Add 'ajoute un document vierge

'on va écrire
    docword.Selection.TypeText Text:="Comment piloter Word97"

'faire un tabulation
    docword.Selection.TypeText Text:=vbTab
    
'revenir à la ligne
    docword.Selection.TypeParagraph
'sauter une ligne
    docword.Selection.TypeParagraph
    docword.Selection.TypeParagraph
    
'zoomer
    docword.ActiveWindow.ActivePane.View.Zoom.Percentage = 100
    
'mise en forme
'ATTENTION un petit conseil mes petits amis, c'est de d'abord mettre le format
'avant de d'insérer le texte donc si vous avez bien compris vous faites :
'docword.selection.paragraphformat.alignement = wdalignparagraphcenter
'docword.selection.typetext text:="blablabla"

'centré
    docword.Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
'aligné à gauche
    docword.Selection.ParagraphFormat.Alignment = wdAlignParagraphLeft
'justifié
    docword.Selection.ParagraphFormat.Alignment = wdAlignParagraphJustify
'aligné à droite
    docword.Selection.ParagraphFormat.Alignment = wdAlignParagraphRight

'mettre le texte en souligné
    If docword.Selection.Font.Underline = wdUnderlineNone Then
        docword.Selection.Font.Underline = wdUnderlineSingle
    Else
        docword.Selection.Font.Underline = wdUnderlineNone
    End If
    
'changer la taille de la police
    docword.Selection.Font.Size = xx 'xx est une valeur numérique
    
'changer la police
    docword.Selection.Font.Name = "Arial"

'mettre en gras
    docword.Selection.Font.Bold = wdToggle
 
'mettre en italique
    docword.Selection.Font.Italic = wdToggle

'souligner le texte
    If docword.Selection.Font.Underline = wdUnderlineNone Then
        docword.Selection.Font.Underline = wdUnderlineSingle
    Else
        docword.Selection.Font.Underline = wdUnderlineNone
    End If

'changer la couleur de la police
    docword.Selection.Font.ColorIndex = wdRed 'ici en rouge
    docword.Selection.Font.ColorIndex = wdAuto 'ici en couleur automatique
    
'changer la couleur de fond du document
    docword.ActiveDocument.Background.Fill.ForeColor.RGB = RGB(xxx, xxx, xxx)
    'où xxx est une valeur comprise en 0 et 255 (256 couleurs)
    docword.ActiveDocument.Background.Fill.Visible = msoTrue
    docword.ActiveDocument.Background.Fill.Solid

'INSERER UN OBJET
'insérer une image à partir du fichier
    docword.Selection.InlineShapes.AddPicture FileName:="C:\cool.bmp", _
        LinkToFile:=False, SaveWithDocument:=True

'insérer un graphique type EXCEL
    docword.ActiveDocument.Shapes.AddOLEObject Anchor:=Selection.Range, _
        ClassType:="MSGraph.Chart.8", LinkToFile:=False, DisplayAsIcon:=False
'insérer un graphique à partir d'un fichier EXCEL existant
    docword.ActiveDocument.Shapes.AddOLEObject ClassType:= _
        "MSGraph.Chart.8", FileName:="c:\cool.xls", LinkToFile:=False, _
        DisplayAsIcon:=False, Left:=xxx, Top:=xxx 'xxx est une valeur numérique
'linktofile:=True permet d'ouvrir le fichier EXCEL lorsque vous double-cliquez sur
'le graphique.
'left, top, ainsi que height et width définisse la position et la taille du graph

'insérer un WORDART
    docword.ActiveDocument.Shapes.AddTextEffect(msoTextEffect28, "COOL", _
        "Impact", 36#, msoFalse, msoFalse, 261.35, 157.5).Select

'insérer un tableau
    docword.ActiveDocument.Tables.Add Range:=Selection.Range, _
    NumRows:=2, NumColumns:=2
    'pour écrire dans le tableau utiliser le typetext à la suite
    'de cette fonction. Pour se déplacer, utiliser :
    docword.Selection.MoveRight Unit:=wdCell
    docword.Selection.MoveUp Unit:=wdLine, Count:=1
    docword.Selection.MoveDown Unit:=wdLine, Count:=1
	docword.Selection.Tables(1).Cell(1, 2).Range.Text = "wizz"
	'ajouter une ligne
    ActiveDocument.Tables(1).Rows.Add
    
'insérer un lien hypertexte
    docword.ActiveDocument.Hyperlinks.Add Anchor:=Selection.Range, Address:= _
        "http://www.cool.com/", SubAddress:=""
        
'effacer l'objet insérer
    docword.Selection.ShapeRange.Delete
    
'insérer la date
    docword.Selection.InsertDateTime DateTimeFormat:="jjjj j MMMM aaaa", _
        InsertAsField:=False
    
'insérer un signet
    With docword.ActiveDocument.Bookmarks
        .Add Range:=Selection.Range, Name:="cool"
        .DefaultSorting = wdSortByLocation
                            'ou = wdsortbyname -> indexer par nom
        .ShowHidden = False
    End With
    
'enregistrer le document sous cool.doc
    docword.ActiveDocument.SaveAs FileName:="c:\cool.doc"

'quitter word
    docword.Application.Quit

End Sub

A voir également

Ajouter un commentaire

Commentaires

Adn56
Messages postés
1220
Date d'inscription
jeudi 24 mai 2007
Statut
Membre
Dernière intervention
28 septembre 2013
1 -
cela serait mieux en version TUTO, mais c'est cool déja, merci.
nathansecret
Messages postés
63
Date d'inscription
mardi 11 novembre 2008
Statut
Membre
Dernière intervention
31 octobre 2011
-
/!\ ATTENTION :

Pour mettre le texte en gras/en italique/souligné, il ne faut pas mettre "wdToggle" mais "True".

wdToggle inverse la valeur (si c'est activé on désactive, sinon on active).

True signifie "Vrai", False signifie "Faux".

Bon, ça fonctionne quand-même mais si quelqu'un a paramétré Word pour que le texte d'un nouveau document soit directement en gras/en italique/souligné, cela mettra la valeur à faux.

Très bon programme sinon !

'Voici donc le code modifié :
'mettre en gras
docword.Selection.Font.Bold = wdToggle
'mettre en italique
docword.Selection.Font.Italic = wdToggle
'souligner
docword.Selection.Font.Underline = wdToggle

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.