Bonjour,
VBA débutant, j'ai voulu adapter une macro à mon cas :
J'ai donc besoin de votre aide :
But de la macro : Partager un fichier en plusieurs onglets en fonction des données de la colonne B.
Ma macro créée bien un onglet par données qui se trouve dans la colonne B mais elle ne recopie qu'une seule ligne alors que je souhaite qu'elle récupère toutes les lignes qui ont la même donnée en colonne B :
Sub creation_onglets()
Dim Ws As Worksheet
Dim trouve As Boolean
Dim contenu As String
Dim lig, derlig As Integer
With Sheets("Feuil1")
derlig = .Range("B65536").End(xlUp).Row
For lig = 2 To derlig
contenu = .Cells(lig, 2).Value
For Each Ws In ThisWorkbook.Worksheets
trouve = False
If StrComp(Ws.Name, contenu, vbTextCompare) = 0 Then
trouve = True
Exit For
End If
Next Ws
If trouve = True Then
.Rows(lig).Copy Sheets(contenu).Range("A65536").End(xlUp).Offset(1, 0)
Else
Sheets.Add
ActiveSheet.Name = contenu
.Rows(lig).Copy Sheets(contenu).Range("A65536").End(xlUp).Offset(1, 0)
End If
Next lig
End With
End Sub
Merci d'avance pour votre aide.