Bonsoir Lacryma, Bernard, le Forum
Je te donnerai deux conseils, le premier étant au niveau du choix de ton sujet qui n'est pas du tout "XLD Compliant"
(Voir Notre Charte)
Le second, serait de préparer ta feuille Excel à exporter, en y copiant uniquement les données que tu désires, le code ci dessus s'enchainant ensuite.
Exemple :
Sub GenerateTempSheet()
Const NombreColonne As Byte = 10
Dim L As Integer, X As Integer
Dim i As Byte
Dim OK As Boolean
L = 1
ThisWorkbook.Worksheets.Add after:=Sheets(Sheets.Count)
On Error GoTo Suite
Sheets(Sheets.Count).Name = "TempForWord"
Suite:
With Sheets("Impayés à ce jour")
For X = 1 To .UsedRange.Rows.Count
OK = False
For i = 1 To NombreColonne
If .Cells(X, i) <> "" Then
Sheets("TempForWord").Cells(L, i) = .Cells(X, i)
OK = True
End If
Next i
If OK = True Then L = L + 1
Next X
End With
InsereTableauFiltre
End Sub
Sub InsereTableauFiltre()
Dim Wrd As Object
Set Wrd = CreateObject("Word.Application")
Dim AppWrd As Object
Set AppWrd = Wrd.Documents.Add
Wrd.Visible = True
With Application
.ScreenUpdating = False
Sheets("TempForWord").UsedRange.Copy
Wrd.Selection.Paste
.ScreenUpdating = True
.CutCopyMode = False
End With
End Sub
C'est comme dit Bernard, assez difficile de savoir comment est fait ton tableau, ici la Constante "NombreColonne" est définie pour traiter sur DIX Colonnes ta feuilles de départ...
Bon Courage et bonne lecture de la
Charte
@+Thierry