Macro copier fichier Excel selon nombre liste avec changement de nom
Fermé
debutantenmacro
Messages postés
3
Date d'inscription
lundi 1 avril 2019
Statut
Membre
Dernière intervention
2 avril 2019
-
1 avril 2019 à 16:19
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 - 2 avril 2019 à 18:23
ccm81 Messages postés 10899 Date d'inscription lundi 18 octobre 2010 Statut Membre Dernière intervention 25 octobre 2024 - 2 avril 2019 à 18:23
A voir également:
- Macro copier fichier Excel selon nombre liste avec changement de nom
- Liste déroulante excel - Guide
- Fichier rar - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Fichier host - Guide
- Trouver un numéro de portable avec un nom ✓ - Forum Mobile
4 réponses
f894009
Messages postés
17205
Date d'inscription
dimanche 25 novembre 2007
Statut
Membre
Dernière intervention
19 octobre 2024
1 709
1 avril 2019 à 17:44
1 avril 2019 à 17:44
Bonjour,
Y a déjà ceci:
firstRow = pCells.Range("B4").Row
Y a déjà ceci:
firstRow = pCells.Range("B4").Row
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
1 avril 2019 à 17:58
1 avril 2019 à 17:58
Bonjour
Et ça
Dim nomf As Workbook
à remplacer par
Dim nomf As String
Cdlmnt
Et ça
Dim nomf As Workbook
à remplacer par
Dim nomf As String
Cdlmnt
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
Modifié le 1 avril 2019 à 19:08
Modifié le 1 avril 2019 à 19:08
Peut être comme ceci
Cdlmnt
Sub CréationFichiers() Dim firstRow As Long, lastRow As Long, i As Long Dim nomCopie As String, CheminSource As String, FichierSource As String CheminSource = Range("E3").Value '(j'ai mis dans des cellules les noms et chemins) FichierSource = CheminSource + "\" + Range("E4").Value & ".xls" firstRow = 4 lastRow = Range("B" & Rows.Count).End(xlUp).Row For i = firstRow To lastRow nomCopie = Range("B" & i) '(mes noms de fichiers sont entre B4 et B100) Workbooks.Open FichierSource With ActiveWorkbook .SaveAs ThisWorkbook.Path & "\" & nomCopie & ".xls" .Close End With Next i End Sub
Cdlmnt
debutantenmacro
Messages postés
3
Date d'inscription
lundi 1 avril 2019
Statut
Membre
Dernière intervention
2 avril 2019
2 avril 2019 à 09:27
2 avril 2019 à 09:27
Merci à tous,
J'ai testé ton code ccm81. Par contre j'ai encore une erreur (400).
Cordialement.
J'ai testé ton code ccm81. Par contre j'ai encore une erreur (400).
Cordialement.
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
2 avril 2019 à 14:43
2 avril 2019 à 14:43
Par contre j'ai encore une erreur (400).
Sur quelle ligne ? Chez moi, ça fonctionne
Pou tester, passes en mode pas à pas
- tu mets un point d'arret (click en marge de la première ligne CheminSource ....)
- exécuter
- la touche F8 te permet d'avance dans l'exécution
- tu passes le curseur sur les variables et tu vérifies leur valeur
Cdlmnt
Sur quelle ligne ? Chez moi, ça fonctionne
Pou tester, passes en mode pas à pas
- tu mets un point d'arret (click en marge de la première ligne CheminSource ....)
- exécuter
- la touche F8 te permet d'avance dans l'exécution
- tu passes le curseur sur les variables et tu vérifies leur valeur
Cdlmnt
debutantenmacro
Messages postés
3
Date d'inscription
lundi 1 avril 2019
Statut
Membre
Dernière intervention
2 avril 2019
2 avril 2019 à 14:53
2 avril 2019 à 14:53
Merci pour ta rapidité.
L'erreur se situe au moment de la sauvegarde du nouveau fichier.
Etant donné que ce fichier a lui-même des macros j'ai mis l'extension en xlsm. L'erreur vient-il de là ?
Cordialement.
L'erreur se situe au moment de la sauvegarde du nouveau fichier.
Etant donné que ce fichier a lui-même des macros j'ai mis l'extension en xlsm. L'erreur vient-il de là ?
Cordialement.
ccm81
Messages postés
10899
Date d'inscription
lundi 18 octobre 2010
Statut
Membre
Dernière intervention
25 octobre 2024
2 422
2 avril 2019 à 18:23
2 avril 2019 à 18:23
je ne pense pas
as tu vérifié la valeur de nomCopie sur la ligne où ça plante ?
as tu vérifié la valeur de nomCopie sur la ligne où ça plante ?