XL 2013 Générateur d'onglet excel

  • Initiateur de la discussion Initiateur de la discussion Lolo4428
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

Lolo4428

XLDnaute Nouveau
Bonjour à tous

je ne sais pas par où commencer

je souhaiterais savoir s'il est possible à partir d'un tableau de données (dans mon cas la feuille 1 )
de générer un onglet (comme ma feuille 2) le tout automatiquement.

l'idée finale étant de remplir le tableau ligne par ligne sur la feuille 1 et par appui sur le bouton générateur de créer les onglets associés (par ex 3lignes sur feuille 1 = 3 onglets)

merci de votre aide en tout cas

Laurent
 

Pièces jointes

Salut Lolo4428,

Bon, c'est pas ce que tu demandes, mais j'te propose déjà une évolution de tes formules, via des index equiv ce qui t'evitera de modifier toutes les formules. ne te reste plus qu'à modifier une cellule (dans laquelle j'ai mis un menu déroulant) sur la feuille pour obtenir ce que tu souhaites.

Ensuite, il ne manquera plus qu'à créer la macro qui copie cette feuille et change la cellule.
 

Pièces jointes

Salut Lolo4428,

Bon, c'est pas ce que tu demandes, mais j'te propose déjà une évolution de tes formules, via des index equiv ce qui t'evitera de modifier toutes les formules. ne te reste plus qu'à modifier une cellule (dans laquelle j'ai mis un menu déroulant) sur la feuille pour obtenir ce que tu souhaites.

Ensuite, il ne manquera plus qu'à créer la macro qui copie cette feuille et change la cellule.[/QUOT
 
Je n'ai pas compris ton amélioration ??

EN repartant de mon fichier :
VB:
Sub mlk()
Set wf = WorksheetFunction
Set t = Sheets("table")
Set b = Sheets("base")

nb = wf.CountA(t.Range("a7:a32"))
nb_feuil = 2

Call nettoyage

For i = 1 To nb
Sheets("base").Copy After:=Sheets(nb_feuil)
nb_feuil = nb_feuil + 1
Sheets(nb_feuil).Name = t.Range("a6").Offset(i, 0)
Sheets(nb_feuil).Range("ad2") = t.Range("a6").Offset(i, 0)
Next i
End Sub

Sub nettoyage()
' macro servant à supprimer toutes les feuilles
' autres que table et base
Application.DisplayAlerts = False
Set wf = WorksheetFunction
For Each s In Sheets
If Not wf.Or(s.Name = "table", s.Name = "base") Then s.Delete
Next s

End Sub
 

Pièces jointes

- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
159
D
  • Question Question
Réponses
5
Affichages
80
Didierpasdoué
D
Retour