VBA Comment créer plusieurs feuilles Excel
choupy51
Messages postés
4
Statut
Membre
-
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
michel_m Messages postés 18903 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Malheureusement je connais très mal les macros mais peut-être pourriez-vous me venir en aide.
Voilà...j'ai un classeur Excel qui comprend 4 feuilles différentes.
Une des feuilles est une feuille source qui comprend X lignes et X colonnes.
J'ai créer une feuille "fiche contact" qui reprend des informations de la feuille source et qui se modifie à chaque fois que je change la donnée de la cellule B3 de cette "fiche contact".
Ce que je souhaite c'est :
- pouvoir créer autant de copie de la feuille "fiche contact" que la feuille source comprend en lignes
- pouvoir insérer automatiquement dans chaque cellule B3 de chaque "fiche contact" une information de la colonne A de la feuille source
- renommer chaque feuille par le nom obtenu dans chaque cellule B3
Ex : Feuille source = 10 lignes, colonne A = code postal
Il me faudrait donc 10 copies de la "fiche contact". Sur chacune de ces fiches, dans la cellule B3 doit se trouver un code postal différent.
Chaque fiche doit être renommer du code postal.
Auriez-vous des idées à me soumettre????
Merci de votre aide
Malheureusement je connais très mal les macros mais peut-être pourriez-vous me venir en aide.
Voilà...j'ai un classeur Excel qui comprend 4 feuilles différentes.
Une des feuilles est une feuille source qui comprend X lignes et X colonnes.
J'ai créer une feuille "fiche contact" qui reprend des informations de la feuille source et qui se modifie à chaque fois que je change la donnée de la cellule B3 de cette "fiche contact".
Ce que je souhaite c'est :
- pouvoir créer autant de copie de la feuille "fiche contact" que la feuille source comprend en lignes
- pouvoir insérer automatiquement dans chaque cellule B3 de chaque "fiche contact" une information de la colonne A de la feuille source
- renommer chaque feuille par le nom obtenu dans chaque cellule B3
Ex : Feuille source = 10 lignes, colonne A = code postal
Il me faudrait donc 10 copies de la "fiche contact". Sur chacune de ces fiches, dans la cellule B3 doit se trouver un code postal différent.
Chaque fiche doit être renommer du code postal.
Auriez-vous des idées à me soumettre????
Merci de votre aide
A voir également:
- Créer plusieurs feuilles excel à partir d'une liste
- Liste déroulante excel - Guide
- Creer un groupe whatsapp a partir d'un autre groupe - Guide
- Créer un compte google - Guide
- Excel liste déroulante en cascade - Guide
- Formule moyenne excel plusieurs colonnes - Guide
4 réponses
Bonjour à tous,
ta liste commence en A2 et peut aller jusqu'à 99 codes
essaies:
ta liste commence en A2 et peut aller jusqu'à 99 codes
essaies:
Sub creeretnommer()
Dim encours As Long, derlig As Byte
derlig = Sheets(1).Range("A150").End(xlUp).Row
Application.ScreenUpdating = False
For cptr = 1 To derlig
encours = Sheets(1).Cells(cptr+1, 1)
Sheets.Add after:=Sheets(cptr)
With ActiveSheet
.Name = Format(encours, "00000")
With .Range("B3")
.Value = encours
.NumberFormat = "00000"
End With
End With
Next
End Sub
michel_m
Messages postés
18903
Date d'inscription
Statut
Contributeur
Dernière intervention
3 318
Merci pour le coucou de remerciement....
Bonjour,
Je ne pourrait pas te donner le code déjà tous fais mais j'ai ça :
ftp://ftp2.developpez.be/developps/vb/VB-excel2.pdf
Un très bon tutoriel!! Tu y trouvera notamment des informations utiles sur :
Comment travailler sur la cellule : PLAGE ET CELLULE (RANGE)
Et comment maitriser la création de nouveau fichier : L'objet WorkBook (classeur)
En espérant t'avoir aidé!!
Edit : Pour les feuilles de calcule voir : Worksheet
Je ne pourrait pas te donner le code déjà tous fais mais j'ai ça :
ftp://ftp2.developpez.be/developps/vb/VB-excel2.pdf
Un très bon tutoriel!! Tu y trouvera notamment des informations utiles sur :
Comment travailler sur la cellule : PLAGE ET CELLULE (RANGE)
Et comment maitriser la création de nouveau fichier : L'objet WorkBook (classeur)
En espérant t'avoir aidé!!
Edit : Pour les feuilles de calcule voir : Worksheet
Bonjour Oo°Evan°oO & michel_m
Merci pour vos informations.
De mon côté, ce wk j'ai pu approfondir mes recherches et je suis arrivée au code suivant :
Sub Copie_Modele()
Dim code_dpt As Variant
Dim maliste As Range
Dim compteur As Variant
Set maliste = Sheets("Clients").Range("A2:A180")
For Each code_client In maliste
Sheets("Fiche contact").Copy , before:=Sheets("Fiche contact")
ActiveSheet.Name = code_dpt.Value
Range("B3").Select
ActiveCell.FormulaR1C1 = code_dpt.Value
Range("G59").Select
ActiveCell.FormulaR1C1 = compteur + 1
compteur = compteur + 1
Next
End Sub
Je pense que cela doit être un peu du "bricolage" vu mon niveau mais "ça fonctionne" sauf que....
Comment peut-on faire pour copier les cellules non-vides de la colonne A de ma feuille "Clients"?????
Comme le fichier sera mis à jour assez régulièrement il va y avoir des rajouts/des suppressions et je me dis que la solution la plus simple serait d'utiliser toutes les cellules non-vides de la colonne A.
Est-ce que mon raisonnement vous semble correct????
Merci pour vos remarques/suggestions
Merci pour vos informations.
De mon côté, ce wk j'ai pu approfondir mes recherches et je suis arrivée au code suivant :
Sub Copie_Modele()
Dim code_dpt As Variant
Dim maliste As Range
Dim compteur As Variant
Set maliste = Sheets("Clients").Range("A2:A180")
For Each code_client In maliste
Sheets("Fiche contact").Copy , before:=Sheets("Fiche contact")
ActiveSheet.Name = code_dpt.Value
Range("B3").Select
ActiveCell.FormulaR1C1 = code_dpt.Value
Range("G59").Select
ActiveCell.FormulaR1C1 = compteur + 1
compteur = compteur + 1
Next
End Sub
Je pense que cela doit être un peu du "bricolage" vu mon niveau mais "ça fonctionne" sauf que....
Comment peut-on faire pour copier les cellules non-vides de la colonne A de ma feuille "Clients"?????
Comme le fichier sera mis à jour assez régulièrement il va y avoir des rajouts/des suppressions et je me dis que la solution la plus simple serait d'utiliser toutes les cellules non-vides de la colonne A.
Est-ce que mon raisonnement vous semble correct????
Merci pour vos remarques/suggestions