Sub lstentreprise()
Dim derniereligne As Long 'ligne
Dim dernierelignecolonne As Integer 'colonne
Dim feuille As Worksheet
Dim plage As Range
'remise à zero des infos dans tous les onglets
For Each feuille In Worksheets
'test si onglet société
If feuille.Name <> "Feuil1" Then
'remise à zero cellules
Worksheets(feuille.Name).Cells.ClearContents
'copie des titres colonnes
Worksheets("feuil1").Range("A1:E1").Copy Worksheets(feuille.Name).Range("A1")
End If
Next feuille
'derniere cellule non vide colonne A de feuil1
derniereligne = Worksheets("feuil1").Range("A" & Rows.Count).End(xlUp).Row
'mise en memoire des infos
Set plage = Worksheets("feuil1").Range("A2:E" & derniereligne)
'boucle de transfert infos dans onglets
For x = 1 To derniereligne - 1
'comparaison du nom de la société avec le nom de la feuille
onglet = Replace(plage(x, 5), 1, -1, vbTextCompare)
'derniere cellule non vide colonne A de l'onglet en cours
dernierelignecolonne = Worksheets(onglet).Range("A" & Rows.Count).End(xlUp).Row + 1
'copie infos
Range(plage(x, 1), plage(x, 5)).Copy Worksheets(onglet).Range("A" & dernierelignecolonne)
Next x
'boucle de transfert dans Fixe ou mobile
For x = 1 To derniereligne - 1
'comparaison du nom de la société avec le nom de la feuille
onglet = Replace(plage(x, 1), 1, -1, vbTextCompare)
If onglet <> "Convergent" Then
'derniere cellule non vide colonne A de l'onglet en cours
dernierelignecolonne = Worksheets(onglet).Range("A" & Rows.Count).End(xlUp).Row + 1
'copie infos
Range(plage(x, 1), plage(x, 5)).Copy Worksheets(onglet).Range("A" & dernierelignecolonne)
End If
If onglet = "Convergent" Then
'si le convergent a un numéro de fixe
If (plage(x, 3) <> "") Then
onglet = "Fixe" 'on va recopier le convergent dans l'onglet fixe
'derniere cellule non vide colonne A de l'onglet en cours
dernierelignecolonne = Worksheets(onglet).Range("A" & Rows.Count).End(xlUp).Row + 1
'copie infos
Range(plage(x, 1), plage(x, 5)).Copy Worksheets(onglet).Range("A" & dernierelignecolonne)
'puis on efface le numéro de mobile qui a été copié inutilement
Worksheets(onglet).Range("D" & dernierelignecolonne).ClearContents
End If
If plage(x, 4) <> "" Then
onglet = "Mobile" 'on va recopier le convergent dans l'onglet Mobile
'derniere cellule non vide colonne A de l'onglet en cours
dernierelignecolonne = Worksheets(onglet).Range("A" & Rows.Count).End(xlUp).Row + 1
'copie infos
Range(plage(x, 1), plage(x, 5)).Copy Worksheets(onglet).Range("A" & dernierelignecolonne)
'puis on efface le numéro de fixe qui a été copié inutilement
Worksheets(onglet).Range("C" & dernierelignecolonne).ClearContents
End If
End If
Next x
End Sub