cs_lilly91
Messages postés7Date d'inscriptionjeudi 5 juin 2008StatutMembreDernière intervention20 avril 2009
-
19 avril 2009 à 15:51
cs_lilly91
Messages postés7Date d'inscriptionjeudi 5 juin 2008StatutMembreDernière intervention20 avril 2009
-
19 avril 2009 à 20:22
Bonjour,
Je ne doit pas avoir tous compris encore a VBA car j'ai très souvent le même problème....
Ici je récupère le nom de ma feuille, et je l'utilise ensuite, mais ça ne fonctionne pas.
Voila mon code:
Sub CréationFeuille()
'Ajout de nouvelle Feuille dans le classeur'
'Création de la feuille pour la nouvelle annee'
'Ainsi que le bilan de la nouvelle annee'
Dim NewYear As Integer
Dim LastYear As Integer
'récupère le nom de l'ancienne annee (feuille 1) et ajoute 1 pour donner le nom a la nouvelle annee'
LastYear = Worksheets(1).Name
NewYear = LastYear + 1
'ajoute la feuille cotisation en première position portant le nom de la nouvel annee'
Sheets.Add Before:=Worksheets(LastYear) 'ici j'ai une erreur'
Worksheets(1).Name = NewYear
J'ai résolu le problème en mettant le numero de la feuille et non pas le nom, mais j'avou que je ne comprends pas pourquoi ça ne marche pas, et j'aimerais bien comprendre meme si je peux faire autrement....
cs_casy
Messages postés7741Date d'inscriptionmercredi 1 septembre 2004StatutMembreDernière intervention24 septembre 201440 19 avril 2009 à 16:14
Tiens, ma réponse précédente n'est pas passée
Je disais donc, puisque LastYears représente le nom d'une feuille, LastYears doit être de type String et non pas Integer sinon dans l'instruction Sheets.Add Before:=Worksheets(LastYear) LastYears sera considéré comme l'index de la feuille et non pas le nom