Réussir à appeler un onglet avec Texte & variable

Bonjour Le forum,

Je dois faire un code qui doit appeler un onglet par rapport à une variable qui se trouve dans

la cellule D1 d'un onglet qui s'appelle "Suivi", se trouve en exemple 4 qui est dans la cellule D1.

Nous avons des onglets à appeler existants qui s'appellent Fiche 1, Fiche 2, Fiche 3, Fiche 4 ... ,

je pensai associer le texte "Fiche " avec la variable contenu dans la cellule D1 pour obtenir le nom de l'onglet à aller chercher. ( dans cet exemple Fiche 4)

j'ai un code écrit en vba mais qui ne fonctionne pas :

Sheets("Suivi").Activate

Set numpage = "Fiche " & Range("D1")

Sheets (numpage).Select

End sub

Quel modification ou rajout faire ?

Si quelqu'un a une idée pourquoi ça pêche, je l'en remercie,

Cordialement,

Mamarus

Bonsoir mamarus, le forum,

Essaies:

numpage = "Fiche " & Range("D1").Value
Sheets(numpage).Select

ou

Set numpage = Sheets("Fiche " & Range("D1").Value)
 numpage.Select

Cordialement,

Bonjour,

Merci pour la réponse,

Je vais tester la proposition

Merci,

Mamarus

Re bonjour le Forum,

J'ai testé les 2 combinaisons, cela fonctionne toujours pas, j'ai 2 messages d'erreurs différents

Je vois pas ou ça pèche

Cordialement,

Mamarus

Bonjour,

  • Il faut peut-être préciser sur quelle feuille se situe D1 ?
  • Il y a bien un espace entre Fiche et le numéro ?
31mamarus.xlsm (21.24 Ko)

Cordialement,

Bonsoir,

J'ai pu voir que cela fonctionne sur l'essai,je vais transposer le code et voir ce que cela donne

Merci, Bonne soirée et bon Noël

Cordialement,

Mamarus

Bonjour ,

Je m'agace sérieusement et avoue ne pas tout comprendre, le code envoyé fonctionne, lorsque je le transpose sur mon fichier, celui ci ne fonctionne pas !

je joins le fichier d'origine pour trouver une solution.

Sur celui ci, l'appel de la fiche est le bouton bleu

Le bouton rouge sert à créer une fiche incrémentée avec la même composante, à savoir : "Fiche " & le chiffre se situant en cellule A1, pour créer l'onglet en copiant la feuille qui sert de Tram ( Fiche XXX ), celui ci fonctionne plus également .

Merci pour l'aide qui sera apportée,

Cordialement,

Mamarus

Bonjour mamarus, le forum,

Attention, en D1 de la feuille "Suivi", tu as Fiche 4 et non 4 .

 numpage = "Fiche " & Sheets("Suivi").Range("D1").Value

numpage équivaut donc à Fiche Fiche 4, donc tu ne trouveras jamais l'onglet.

Dans ce cas,

numpage =  Sheets("Suivi").Range("D1").Value
  • Pour la création de l'onglet:
Sub create_fich()
Dim Nom$
 Nom = Sheets("Suivi").Range("A1"): ' Cellule du compteur
  If WsExist(Nom) Then MsgBox "la feuille " & Nom & " existe déjà !": Exit Sub
'
' Copie de la fiche en la renommant avec variable Nom
'
   Sheets("Fiche XXX").Copy after:=Sheets(Sheets.Count)
    ActiveSheet.Name = Nom
End Sub

Function WsExist(Nom$) As Boolean
   On Error Resume Next
   WsExist = Worksheets(Nom).Index
End Function
12mamarus.xlsm (36.86 Ko)

Joyeux Noël !

Cordialement,

Bonjour,

Merci pour la réponse,

Je vais regarder tout cela

Bonnes Fêtes et merci pour la disponibilité

Cordialement,

Mamarus

Bonjour Xorsankukai, Le Forum

J'ai testé cela fonctionne,

Merci pour l'implication

Bonne journée,

Cordialement,

Mamarus

Rechercher des sujets similaires à "reussir appeler onglet texte variable"