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   -
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
A voir également:

4 réponses

michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Bonjour à tous,

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
2
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
Merci pour le coucou de remerciement....
0
Oo°Evan°oO Messages postés 29 Statut Membre 9
 
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
0
choupy51 Messages postés 4 Statut Membre
 
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
0
michel_m Messages postés 18903 Date d'inscription   Statut Contributeur Dernière intervention   3 318
 
je suis en formation pendant 15 jours
0