Marcro et Fusion d'un tableau Excel dans Word - VB/VBA/VBS - Programmation
Marsh Posté le 25-09-2005 à 14:45:37
Bon cet exemple est fait avec 3 tableaux dans word ( 1 de 20 lignes, 5 colonnes, un de 2 lignes, 5 colonnes et un de 10 lignes et 5 colonnes ) 
 
Le tout est d'avoir le même parcours dans Excel que dans word ! 
 
A savoir que dans word, le premier tableau à l'indice 1 le deuxième 2...etc.. 
 
J'espère que ca t'aideras.. 
 
@+ Fred 
 
 
 
 
 
Dim maxRows, maxCols, c, t, i, j As Integer 
Dim Rng As Range 
Dim NbreTableau As Integer 
 
 
   
maxRows = 20 
maxCols = 5 
NbreTableau = 3 
 
 
Set Word = CreateObject("Word.Application" ) 
docWord = Word.Documents.Open("C:\doc1.doc" ) 
Word.DisplayAlerts = False 
Word.Visible = True 
     
 
t = 1 ' Tableau Word 
c = 1 ' Colone Word 
i = 0 ' Colone Excel 
j = 0 ' Ligne Excel 
ActiveWorkbook.Sheets("Feuil1" ).Select 
Set Rng = Feuil1.Range("A1" ) 
   
While t <= NbreTableau 
    While c < maxCols 
        j = 0 
' C'est ici que tu as les colonnes et tableaux dans word 
        For Each acell In Word.ActiveDocument.Tables(t).Columns(c).Cells 
            Rng.Offset(j, i).Select 
            acell.Range.Text = Rng.Offset(j, i).Value 
            j = j + 1 
        Next acell 
        i = i + 1 
        c = c + 1 
    Wend 
    If c >= maxCols Then 
        Select Case t 
            Case 1: 
                ActiveWorkbook.Sheets("Feuil2" ).Select 
                Set Rng = Feuil2.Range("A1" ) 
                maxRows = 2 
                maxCols = 5 
            Case 2: 
                ActiveWorkbook.Sheets("Feuil3" ).Select 
                Set Rng = Feuil3.Range("A1" ) 
                maxRows = 10 
                maxCols = 5 
        End Select 
         t = t + 1 
         c = 1 
         i = 0 
    End If 
    j = 0 
     
Wend 
   
docWord.Save 
docWord.Close 
Word.Quit
Marsh Posté le 25-09-2005 à 14:47:43
Nota : 
 
Tu peux mettre en commentaire la ligne 
Rng.Offset(j, i).Select  
 
Ca ne sert qu'a voir là ou tu en es dans excel...
Marsh Posté le 23-09-2005 à 14:19:53
Salut @ tous,
je souhaite faire une macro qui me prend un tableau Excel (certaine colones) et qui me copie ces colones dans un tableau word.
Seulement en Word je ne sais pas comment donner de nom à mon tableau pour dire à Excel c'est ce tableau là dans lequel tu copies les cellules voulues.
Si quelqu'un sait ou à une idée ça serait vraiment sympa, car la je cherche depuis un bout de temps, et dans les tutoriaux y pas grand chose là dessus.
Merci
pretorienx