Bonjour à toutes et tous
Excel : LTSC
J’ai un tableau source sur une feuille et une liste déroulante sur une autre pour filtrer mes données.
J’ai créé une macro pour copier les résultats de la liste sur un document Word. Tout fonctionne parfaitement. En revanche, je voudrais que sur le doc Word seules les cellules contenant les données soient copiées. Dans le code que j’ai trouvé il faut indiquer le nombre de lignes et le nombre de colonnes à copier sauf que la liste déroulante change tout le temps donc parfois les cellules du tableau sur Word sont vides.
Y a-t-il un bout de code pour dire à Excel de ne copier que les lignes issues de la liste déroulante.
J’espère être assez clair dans mes explications.

Merci pour votre aide

Voici le code de la macro
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
Sub add_table_2_word()
 
Dim objWord
Dim objDoc
Dim objSelection
Dim i As Integer
Dim j As Integer
 
Set objWord = CreateObject("Word.Application")
Set objDoc = objWord.Documents.Add
Set objSelection = objWord.Selection
 
With objWord
 
objWord.Visible = True
objWord.Activate
.Selection.TypeText ("EPI METIERS")
 
Set CountryTable = objDoc.Tables.Add(objSelection.Range, 20, 5)
 
With CountryTable
 
    With .Borders
        .Enable = True
        .OutsideColor = RGB(0, 0, 0)
        .InsideColor = RGB(0, 0, 0)
    End With
 
    .Rows(1).Shading.BackgroundPatternColor = RGB(51, 204, 51)
 
    For i = 1 To 20
 
        For j = 1 To 5
 
        .Cell(i, j).Range.InsertAfter ThisWorkbook.Sheets("Tableau1").Cells(i, j).Text
 
        Next j
 
    Next i
 
End With
End With
End Sub