Sélection d'un onglet avec ListBox

Nadia_coeur

XLDnaute Nouveau
Bonsoir à vous toutes et tous,

je suis à la recherche d'un moyen d'utiliser une ListBox(ActiveX) afin que l'utilisatrice finale puisse en sélectionnant un nom dans cette ListBox, accéder directement à l'onglet correspondant.

Qui peux m'aider ? Je mets un fichier TEST1 afin de permettre une meilleure explication

http://cjoint.com/?mloetvXbql

merci d'avance de me sortir d'une impasse insurmontable pour moi

A+

Guido
 

Nadia_coeur

XLDnaute Nouveau
Re : Sélection d'un onglet avec ListBox

Bonsoir Spitnolan08,

Je viens de tester ton code et j'ai une erreur d'exécution 424
et il demande un objet requis
La ligne incriminée est

ListBox1.List(Nlist).Activate

(j'avoue ne pas trop connaître le VBA)

Merci de ton aide
 

Nadia_coeur

XLDnaute Nouveau
Re : Sélection d'un onglet avec ListBox

Bonsoir skoobi

merci pour la correction,

donc avec ce morceau j'ai une erreur d'exécution 9 et il me dit :
L'indice n'appartient pas à la sélection.

J'ai mis un fichier Test en ligne via Cjoint ce qui permettra de visualiser ce que je désire faire exactement.

Merci aussi pour ton aide.

A+
 

Spitnolan08

XLDnaute Barbatruc
Re : Sélection d'un onglet avec ListBox

Re,

Merci Skoobi, j'avais oublié de taper un morceau du code...
donc avec ce morceau j'ai une erreur d'exécution 9 et il me dit :
L'indice n'appartient pas à la sélection.
Obtiens tu ce résultat en cliquant sur la 1ère ligne de ta listbox ou sur toutes ?
J'ai mis un fichier Test en ligne via Cjoint ce qui permettra de visualiser ce que je désire faire exactement.
Le problème c'est que ton fichier est en 2007... et qu'à la conversion plus rien n'est actif... Si tu nous transmets un fichier en version antérieure qui fonctionne, on pourra mieux te dépanner.

Enfin, il est possible de joindre des fichiers dans les posts : beaucoup plus efficace que sur c..joint

Cordialement
 

Spitnolan08

XLDnaute Barbatruc
Re : Sélection d'un onglet avec ListBox

Re,

Je te confirme donc mes précédents propos : c'est uniquement sur la 1ère ligne que le code plante. Ce qui est logique puisque le nom figurant dans la listBox n'est pas le même que celui de ta feuille.
Modifie le en Table_matière et la chevillette cherra...
Inconvénient de ton système, il faut que tu copies le code ci dessous dans tous les modules de feuille.
Code:
Private Sub ListBox1_Click()
Dim Nlist As Byte
Nlist = ListBox1.ListIndex
Sheets(ListBox1.List(Nlist)).Activate
End Sub
Cordialement
 

Nadia_coeur

XLDnaute Nouveau
Re : Sélection d'un onglet avec ListBox

Je te remercie de ces remarques.

Dans l'amélioration de ce fichier, comment alors faire pour que cela soit plus simple ?
(attention la listBox c'est pour que l'utilisatrice ne puisse pas ouvrir certains onglets qui lui sont pas destinés)
 

Nadia_coeur

XLDnaute Nouveau
Re : Sélection d'un onglet avec ListBox

Hello skoobi

j'avais mis un fichier via Cjoint comme lien de téléchargement.

Mais après avoir compris que l'erreur 9 est une erreur de nom mal orthographié entre les onglets et la listBox.

Cela fonctionne correctement actuellement. Je fais des tests, pour voir si cela fonctionne dans tous les cas de figures imaginables.

Je me manifesterai, par la suite pour la suite.

Merci à toi Skoobi

@Bientôt

Guido
 

ChTi160

XLDnaute Barbatruc
Re : Sélection d'un onglet avec ListBox

Salut Nadia_coeur
bonjour le fil

j'avais fait cela Lol
Code:
Private Sub ListBox1_Click()
Dim sht As String
sht = ListBox1.List(ListBox1.ListIndex)
If sht <> "" Then Worksheets(sht).Activate
End Sub
j'ai du modifier le nom de la feuille il ne correspondait pas a la liste Table des matières
bonne fin de journée
 

Statistiques des forums

Discussions
312 571
Messages
2 089 804
Membres
104 276
dernier inscrit
helenevellocet