Bonjour à tous!
Je me permets de revenir solliciter votre aide.
Je suis en train d'apprendre à créer mes propres macro via VBA et donc son langage et je bloque sur quelque chose qui pour vous, je pense, va vous paraître assez simple .
Ce que je veux faire c'est, créer autant de classeur qu'il y a de ligne dans ma liste dans ma feuille "Feuil1" et que pour chaque classeur créé, ça me colle la feuille "Modele", ça me l'enregistre dans le même dossier que mon classeur source avec le même nom qui se trouve dans ma liste. (Mon classeur source est composé que de ces deux feuilles)
J'ai donc réussi à créer autant de classeur que de ligne dans ma liste ainsi qu'à les enregistrer dans le dossier attendu tout en fermant les nouveaux classeurs créés à chaque fois.
Je bloque dès que je veux incrémenter des action avant d'enregistrer et fermer un classeur créé pour passer au suivant. Et donc par exemple, pour copier ma feuille "Modele" sur chaque nouveau classeur.
J'espère avoir été assez précis dans ma description.
Je vous joint mon "code" que j'ai commencé à écrire.
Si besoin, je peux également vous transmettre mon classeur.
Je vous remercie par avance pour l'aide que vous pourrez m'apporter. Et sans vouloir être embêtant, je suis plus ici pour comprendre la méthode que d'avoir une solution tout faite .
Au dernière petite question, existe-t'il un moyen de forcer la sauvegarde en ".xlsm" et ne pas être obligé d'enregistrer en "xls"?
Je me permets de revenir solliciter votre aide.
Je suis en train d'apprendre à créer mes propres macro via VBA et donc son langage et je bloque sur quelque chose qui pour vous, je pense, va vous paraître assez simple .
Ce que je veux faire c'est, créer autant de classeur qu'il y a de ligne dans ma liste dans ma feuille "Feuil1" et que pour chaque classeur créé, ça me colle la feuille "Modele", ça me l'enregistre dans le même dossier que mon classeur source avec le même nom qui se trouve dans ma liste. (Mon classeur source est composé que de ces deux feuilles)
J'ai donc réussi à créer autant de classeur que de ligne dans ma liste ainsi qu'à les enregistrer dans le dossier attendu tout en fermant les nouveaux classeurs créés à chaque fois.
Je bloque dès que je veux incrémenter des action avant d'enregistrer et fermer un classeur créé pour passer au suivant. Et donc par exemple, pour copier ma feuille "Modele" sur chaque nouveau classeur.
J'espère avoir été assez précis dans ma description.
Je vous joint mon "code" que j'ai commencé à écrire.
Si besoin, je peux également vous transmettre mon classeur.
Je vous remercie par avance pour l'aide que vous pourrez m'apporter. Et sans vouloir être embêtant, je suis plus ici pour comprendre la méthode que d'avoir une solution tout faite .
Au dernière petite question, existe-t'il un moyen de forcer la sauvegarde en ".xlsm" et ne pas être obligé d'enregistrer en "xls"?
VB:
Sub CréerDesClasseurs()
Chemin = ActiveWorkbook.Path
For Each i In Range("Liste")
If i = "" Then
Exit For
Else
NomDuClasseur = i.Value
ChemFiche = Chemin & "\" & NomDuClasseur & ".xls"
Workbooks.Add
Workbooks("Test Macros.xlsm").Activate
Sheets("Modele").Select
Sheets("Modele").Copy
Workbooks(NomDuClasseur).Activate
Sheets("Feuil1").Select
Sheets("Modele").Select
Selection.PasteSpecial Paste:=xlPasteValues
Application.CutCopyMode = False
ActiveWorkbook.SaveAs ChemFiche
ActiveWorkbook.Close True
End If
Next i
End Sub