Scinder un fichier excel en plusieurs onglets
Tatoon22
-
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
yg_be Messages postés 23541 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour !
Je cherche une macro qui permettrait de scinder un fichier excel en autant d'onglets qu'il y a de valeurs pour la variable Dossier Groupe.
Mes données se présentent comme ça :
N° Compagnie Nom Compagnie Dossier Commercial Dossier Groupe N° Client
5312 CCPMA PREVOYANCE 35308 4262 933615
5312 CCPMA PREVOYANCE 43873 4264 1001564
5312 CCPMA PREVOYANCE 4259 4267 900803
5312 CCPMA PREVOYANCE 11910 4262 900464
5312 CCPMA PREVOYANCE 35308 4263 933615
5312 CCPMA PREVOYANCE 32581 4264 932300
...
...
Merci pour votre aide !
Gaëtan
Je cherche une macro qui permettrait de scinder un fichier excel en autant d'onglets qu'il y a de valeurs pour la variable Dossier Groupe.
Mes données se présentent comme ça :
N° Compagnie Nom Compagnie Dossier Commercial Dossier Groupe N° Client
5312 CCPMA PREVOYANCE 35308 4262 933615
5312 CCPMA PREVOYANCE 43873 4264 1001564
5312 CCPMA PREVOYANCE 4259 4267 900803
5312 CCPMA PREVOYANCE 11910 4262 900464
5312 CCPMA PREVOYANCE 35308 4263 933615
5312 CCPMA PREVOYANCE 32581 4264 932300
...
...
Merci pour votre aide !
Gaëtan
A voir également:
- Diviser une feuille excel en plusieurs pages
- Feuille de score belote excel - Forum Excel
- Liste déroulante excel - Guide
- Feuille de pointage excel - Télécharger - Tableur
- Déplacer une colonne excel - Guide
- Formule moyenne excel plusieurs colonnes - Guide
7 réponses
Bonjour,
Par VBA, tu peux utiliser ce code :
Les commentaires (textes apparaissant en vert sous VBA) sont à adapter à vos besoins.
A insérer dans un module : sous la feuille Excel taper ALT+F11 puis Insertion/Module. Copier coller ce code dans la fenêtre Visual Basic, fermer visual basic. Pour la "lancer" , taper ALT+F8 dans la feuille Excel, choisir "creation_onglets" et cliquer sur exécuter...
Par VBA, tu peux utiliser ce code :
Sub creation_onglets() Dim Ws As Worksheet Dim trouve As Boolean Dim contenu As String Dim lig, derlig As Integer With Sheets("Feuil1") 'à adapter Feuil1 = feuille ou sont vos données derlig = .Range("E65536").End(xlUp).Row 'à adapter, E = colonne "Dossier groupe" For lig = 2 To derlig contenu = .Cells(lig, 5).Value 'à adapter 5 = 5ème col cf E ci dessus 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
Les commentaires (textes apparaissant en vert sous VBA) sont à adapter à vos besoins.
A insérer dans un module : sous la feuille Excel taper ALT+F11 puis Insertion/Module. Copier coller ce code dans la fenêtre Visual Basic, fermer visual basic. Pour la "lancer" , taper ALT+F8 dans la feuille Excel, choisir "creation_onglets" et cliquer sur exécuter...
Bonjour, cela ne fonctionne pas chez moi, j'ai ce message d'erreur
Erreur d'exécution "9"
L'indice n'appartient pas à la sélection
bonjour,
à quelle ligne?