Exporter les lignes d'un fichier Excel dans d'autr
Fermé
Tazos27
Messages postés
64
Date d'inscription
jeudi 24 septembre 2015
Statut
Membre
Dernière intervention
24 juin 2020
-
20 avril 2018 à 10:09
Tazos27 Messages postés 64 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 24 juin 2020 - 20 avril 2018 à 15:00
Tazos27 Messages postés 64 Date d'inscription jeudi 24 septembre 2015 Statut Membre Dernière intervention 24 juin 2020 - 20 avril 2018 à 15:00
A voir également:
- Exporter les lignes d'un fichier Excel dans d'autr
- Fichier rar - Guide
- Comment ouvrir un fichier epub ? - Guide
- Comment réduire la taille d'un fichier - Guide
- Aller à la ligne excel - Guide
- Liste déroulante excel - Guide
2 réponses
Guillaumeys
Messages postés
76
Date d'inscription
jeudi 19 avril 2018
Statut
Membre
Dernière intervention
21 avril 2018
11
20 avril 2018 à 10:16
20 avril 2018 à 10:16
Bonjour à toi,
Malheureusement, ce n'est pas possible, tu peux cepandant le faire manuellement
Malheureusement, ce n'est pas possible, tu peux cepandant le faire manuellement
Jauster
Messages postés
126
Date d'inscription
jeudi 7 décembre 2017
Statut
Membre
Dernière intervention
31 août 2018
40
Modifié le 20 avril 2018 à 11:18
Modifié le 20 avril 2018 à 11:18
Bonjour,
Testé sur 1000 lignes, a essayer sur votre document.
ATTENTION : Le fichier source est découpé et donc détruit. Pensez à faire une sauvegarde de votre fichier avant de lancer la macro. Les nouveaux classeurs seront enregistrés dans le dossier où le fichier source est enregistré. Le format recommandé pour le fichier est .xlsx
Pour l'ajouter au fichier > Alt + F11 > clic droit dans ton projet dans l'arborescence à gauche > Insert > Module et copier le code. Il faut également être sur la feuille source avant de lancer la macro
Testé sur 1000 lignes, a essayer sur votre document.
ATTENTION : Le fichier source est découpé et donc détruit. Pensez à faire une sauvegarde de votre fichier avant de lancer la macro. Les nouveaux classeurs seront enregistrés dans le dossier où le fichier source est enregistré. Le format recommandé pour le fichier est .xlsx
Sub AddSheets() Application.EnableEvents = False Dim wbNew As Workbook Dim wsSource As Worksheet Dim wb As Workbook Dim sheetCount As Integer Dim rowCount As Integer Dim splitlignes As Integer Dim strFilename As String Set wsSource = ActiveSheet Set wb = ActiveWorkbook splitlignes = 50 rowCount = Application.CountA(Sheets(1).Range("A:A")) sheetCount = Round(rowCount / splitlignes, 0) Dim i As Integer For i = 1 To sheetCount - 1 Step 1 With wb .Sheets.Add after:=.Sheets(.Sheets.Count) wsSource.Range("A1:Z1").EntireRow.Copy Destination:=Sheets(.Sheets.Count).Range("A1").End(xlUp) wsSource.Range("A" & (splitlignes + 2) & ":Z" & (2 * splitlignes + 1)).EntireRow.Cut Destination:=Sheets(.Sheets.Count).Range("A" & Rows.Count).End(xlUp).Offset(1) wsSource.Range("A" & (splitlignes + 2) & ":Z" & (2 * splitlignes + 1)).EntireRow.Delete ActiveSheet.Name = "Lignes " + CStr(((.Sheets.Count - 1) * splitlignes + 1)) & " - " & CStr((.Sheets.Count * splitlignes)) End With Next wsSource.Name = "Lignes 1 - " & splitlignes For Each ws In wb.Worksheets strFilename = wb.Path & "/" & ws.Name ws.Copy Set wbNew = ActiveWorkbook wbNew.SaveAs strFilename wbNew.Close Next ws Application.EnableEvents = True End Sub
Pour l'ajouter au fichier > Alt + F11 > clic droit dans ton projet dans l'arborescence à gauche > Insert > Module et copier le code. Il faut également être sur la feuille source avant de lancer la macro
Jauster
Messages postés
126
Date d'inscription
jeudi 7 décembre 2017
Statut
Membre
Dernière intervention
31 août 2018
40
20 avril 2018 à 11:17
20 avril 2018 à 11:17
PS : Changer la valeur de splitlignes pour augmenter ou diminuer le nombre de lignes
Tazos27
Messages postés
64
Date d'inscription
jeudi 24 septembre 2015
Statut
Membre
Dernière intervention
24 juin 2020
4
20 avril 2018 à 11:49
20 avril 2018 à 11:49
Jauster!!!! tu es mon Dieu!!! Merci c'est top j'ai changer le splitline en 49, par contre le premier fichier créé est en 71 lignes je ne sais pas pour quoi mai cela me va très bien comme çà merci beaucoup!!
Tazos27
Messages postés
64
Date d'inscription
jeudi 24 septembre 2015
Statut
Membre
Dernière intervention
24 juin 2020
4
20 avril 2018 à 12:27
20 avril 2018 à 12:27
Jauster, une dernière petite demande, est-ce possible que les fichiers créés s'enregistrent en version classeur excel 97-2003 plutôt que .xlsx?
Jauster
Messages postés
126
Date d'inscription
jeudi 7 décembre 2017
Statut
Membre
Dernière intervention
31 août 2018
40
Modifié le 20 avril 2018 à 13:28
Modifié le 20 avril 2018 à 13:28
Re,
Oui il suffit de remplacer :
par :
Oui il suffit de remplacer :
For Each ws In wb.Worksheets strFilename = wb.Path & "/" & ws.Name ws.Copy Set wbNew = ActiveWorkbook wbNew.SaveAs strFilename wbNew.Close Next ws
par :
For Each ws In wb.Worksheets strFilename = wb.Path & "/" & ws.Name ws.Copy Set wbNew = ActiveWorkbook wbNew.SaveAs strFilename, FileFormat:=xlWorkbookNormal wbNew.Close Next ws
Tazos27
Messages postés
64
Date d'inscription
jeudi 24 septembre 2015
Statut
Membre
Dernière intervention
24 juin 2020
4
20 avril 2018 à 15:00
20 avril 2018 à 15:00
Un grand merci à toi Jauster, cela va me faciliter la vie ;)
20 avril 2018 à 10:33
Modifié le 20 avril 2018 à 10:34
C'est possible avec du VBA, mais il y aura beaucoup de fichier. Par contre on peut le split en différentes feuilles ?
20 avril 2018 à 10:37
Comment split en plusieurs feuilles?