J'ai une macro que j'ai essayé de modifier pour copier certaines colonnes d'une feuille à une autre.
Je dois vérifier les valeur de la première colonne et si sa valeur (exemple:200) est contenu dans une certaine cellule d'une autre feuille je dois recopier les lignes qui contiennent ces valeurs sur une autre feuille, mais seulement pour cette valeur (dans mon exemple 200)
Exemple:
100 01- pied
100 01A- main
200 01- pied
200 01B- bras
200 01C- nez
300 02- coude
300 01- pied
Résultat souhaité:
01-pied
01B-bras
01C-nez
Sub SearchForString()
Dim LSearchRow As Integer
Dim LCopyToRow As Integer
On Error GoTo Err_Execute
'Start search in row 4
LSearchRow = 2
'Start copying data to row 2 in Sheet2 (row counter variable)
LCopyToRow = 2
While Len(Range("A" & CStr(LSearchRow)).Value) > 0
'If value in column E = "Mail Box", copy entire row to Sheet2
If Sheets("Acceuil").Cells("I23").Value Like Range("A*" & CStr(LSearchRow)).Value Then
'If Sheets("Acceuil").Cells("I23") Like Sheets ("Feuil1").Range("A*").Value Then
'Select row in Sheet1 to copy
Rows(CStr(LSearchRow) & ":" & CStr(LSearchRow)).Select
Selection.Copy
'Paste row into Sheet2 in next row
Sheets("Recap").Select
Rows(CStr(LCopyToRow) & ":" & CStr(LCopyToRow)).Select
ActiveSheet.Paste
'Move counter to next row
LCopyToRow = LCopyToRow + 1
'Go back to Sheet1 to continue searching
Sheets("Feuil1").Select
End If
LSearchRow = LSearchRow + 1
Wend
'Position on cell A3
Application.CutCopyMode = False
Range("A3").Select
MsgBox "All matching data has been copied."
Exit Sub