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
| Private Sub CommandButton6_Click()
Dim Plage As Range, Dico As Object, C As Range
Set Dico = CreateObject("Scripting.Dictionary")
'J'active le fichier dans lequel il faut prélever les infos
Windows("Receivables May.xls").Activate
'Il n'y a qu'une seule feuille dans ce classeur, le nom peut varier suivant les extractions donc j'utilise seulement "ThisWorksheet"
With ThisWorksheet
Set Plage = .Range(.[A1], .Cells(.Rows.Count, 1).End(xlUp))
For Each C In .Range(.[A2], .Cells(.Rows.Count, 1).End(xlUp))
If Not Dico.exists(C.Value) Then
Dico.Add C.Value, C.Value
.AutoFilterMode = False
Plage.AutoFilter 1, C.Value
Plage.Offset(1).Resize(Plage.Rows.Count - 1, 4).SpecialCells(xlCellTypeVisible).Copy
'J'y ai inseré le repertoire ou sont stocké les différents fichiers Excel Set wbk = Workbooks.Open(ThisWorkbook.Path & "D:\Documents and ........ Reconciliation File" & C.Value)
'Chaque extractions et copier/coller devra être insérer dans une feuille correspondant à un mois précis, une liste déroulante intégrant donc 12 mois a été créée
wbk.Sheets(ComboBox2.Value).[A68].PasteSpecial xlPasteValues
End If
Next C
.AutoFilterMode = False
End With
End Sub |
Partager