Nom d'onglet stocké dans une variable
Résolu
marianne84
Messages postés
9
Date d'inscription
Statut
Membre
Dernière intervention
-
marianne84 Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
marianne84 Messages postés 9 Date d'inscription Statut Membre Dernière intervention -
Bonjour ,
J'aimerais savoir comment activer sur VBA un onglet dont le nom est égal à la valeur d'une variable.
J'ai entré le code
Dim nom_dept As String
For i = 1 To 15
nom_dept = Cells(i, 4).Value ' par ex : Cells(i, 4).Value = departement Finance
Activeworksheet.Name = nom_dept ' les noms des onglets sont chaque cellule de la colonne 4
VBA me met comme message d'erreur "objet requis"
Le but c'est de reconnaître le nom du département dans la colonne 4 et d'activer l'onglet qui porte ce nom
J'espère avoir été assez claire
Merci à tous!
J'aimerais savoir comment activer sur VBA un onglet dont le nom est égal à la valeur d'une variable.
J'ai entré le code
Dim nom_dept As String
For i = 1 To 15
nom_dept = Cells(i, 4).Value ' par ex : Cells(i, 4).Value = departement Finance
Activeworksheet.Name = nom_dept ' les noms des onglets sont chaque cellule de la colonne 4
VBA me met comme message d'erreur "objet requis"
Le but c'est de reconnaître le nom du département dans la colonne 4 et d'activer l'onglet qui porte ce nom
J'espère avoir été assez claire
Merci à tous!
A voir également:
- Nom d'onglet stocké dans une variable
- Où est stocké le presse-papier - Guide
- Raccourci rouvrir onglet fermé - Guide
- Trouver un nom avec une adresse ✓ - Forum Réseaux sociaux
- Nom sonnerie iphone - Forum iPhone
- Nom de l'adresse - Forum Jeux vidéo
3 réponses
Salut,
si tu veux activer l'onglet, il faut écrire dans ta boucle :
Sheets("nom_dept").Activate
par contre si tu écris juste ça, tes onglets (à condition qu'ils existent) vont être activés successivement et c'est tout... enfin je suppose qu'il y a une suite à ton code.
en espérant t'avoir aidé,
bonne soirée !
ed
si tu veux activer l'onglet, il faut écrire dans ta boucle :
Sheets("nom_dept").Activate
par contre si tu écris juste ça, tes onglets (à condition qu'ils existent) vont être activés successivement et c'est tout... enfin je suppose qu'il y a une suite à ton code.
en espérant t'avoir aidé,
bonne soirée !
ed
en utilisant ça chez moi ça marche...
Sub test()
Dim nomonglet As String
For i = 2 To 4
nomonglet = Cells(i, 1).Value
Sheets(nomonglet).Activate
Next
End Sub
as tu essayé de débugger en utilisant F8 ? quelle ligne pose problème ?
a+ed
Sub test()
Dim nomonglet As String
For i = 2 To 4
nomonglet = Cells(i, 1).Value
Sheets(nomonglet).Activate
Next
End Sub
as tu essayé de débugger en utilisant F8 ? quelle ligne pose problème ?
a+ed
alors là...
la seule idée qui me vient c'est de vérifier que tes noms d'onglets sont bien EXACTEMENT identiques à ceux contenus dans tes cellules, parce que ton erreur implique que l'onglet n'existe pas.
c'est vite arrivé de se tromper sur les noms d'onglets, par exemple j'ai déjà passé plus d'une heure à réaliser que Sheets("Accueil") est différent de Sheets("Acceuil")...
bon courage !
ed
la seule idée qui me vient c'est de vérifier que tes noms d'onglets sont bien EXACTEMENT identiques à ceux contenus dans tes cellules, parce que ton erreur implique que l'onglet n'existe pas.
c'est vite arrivé de se tromper sur les noms d'onglets, par exemple j'ai déjà passé plus d'une heure à réaliser que Sheets("Accueil") est différent de Sheets("Acceuil")...
bon courage !
ed
J'avais pensé à ta réponse mais ça marche pas VBA me met "l ' indice n'appartient pas à la sélection"
De même Sheets(nom_dept).Activate ne marche pas non plus
T'a raison ya une suite à mon code, une fois que vba aura activé l 'onglet concerné je pourrai faire des copier coller mais je suis bloquée avant