Créer des onglets à partir de listes et champs nommés [Résolu]

Signaler
-
 Seven -
Bonjour,

Dans une feuille j'ai fait plusieurs listes, dans différentes colonnes, et j'ai nommé les plages. ex : colonne A = liste_1, colonne B = liste_2... Ces listes contiennent des valeurs, ex : cdpf1, cdpf2...

Dans une autre feuille, Paramètre, j'ai une liste déroulante avec les plages nommées.

Puis une dernière feuille, avec un tableau, qui doit être recopié autant de fois qu'il y a de valeurs dans une liste.

Dans ma macro j'ai le code suivant :

Sub ajout_onglet()

Dim Nom As String, c As Range

For Each c In Names(Range("C4").Value)

Nom = c.Value

If Nom <> "" Then

Sheets("Exemple").Copy After:=Worksheets(Worksheets.Count)
ActiveSheet.Name = Nom
ActiveSheet.Range("C2") = c.Value

End If

Next c

Mais bien sûr cela ne fonctionne pas.. Quelqu'un pourrait-il m'aider ?

Merci d'avance

Configuration: Windows / Chrome 86.0.4240.198

2 réponses

Messages postés
54
Date d'inscription
dimanche 5 août 2012
Statut
Membre
Dernière intervention
4 janvier 2021
6
Bizarre cela fonctionne très bien chez moi. As tu bien enlever le ".value" à la fin ainsi que le "name" ?
Ah oui pardon, erreur de ma part !

Sa fonctionne bien merci beaucoup :)
Messages postés
54
Date d'inscription
dimanche 5 août 2012
Statut
Membre
Dernière intervention
4 janvier 2021
6
Bonjour,

For Each c In Names(Range("C4").Value) 


Si j'ai bien compris,en C4 se trouve le nom de ta liste? si c'est le cas il faut doubler ton range c'est à dire essaye comme cela :

For Each c In Range(range("C4"))


Bonne soirée
Merci pour ta réponse !

Oui c’est bien ça. Je viens d’essayer le code mais ça ne fonctionne pas. La méthode range de l’objet global a échoué..