IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Naviguer entre des feuilles excel par UserForm


Sujet :

Macros et VBA Excel

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 47
    Points : 20
    Points
    20
    Par défaut Naviguer entre des feuilles excel par UserForm
    ,

    Voici le code que j'ai choppé sur l'internet :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    Private Sub cbListeOngletsClasseur_Change()
       cbListeOngletsClasseur.MatchRequired = True
       cbListeOngletsClasseur.MatchEntry = fmMatchEntryComplete
    End Sub
     
    Private Sub cbListeOngletsClasseur_Click()
         Select Case cbListeOngletsClasseur.ListIndex
         End Select
    End Sub
     
    Private Sub cmdOK_Click()
        Num = (cbListeOngletsClasseur.ListIndex) + 1
            If Num = 0 Then
            MsgBox "Vous n'avez rien sélectionné, RECOMMENCER!!!"
            Unload fmListeOngletsClasseur
            Call ChoixOnglet
            Else
            Sheets.Item(Num).Select
            Unload fmListeOngletsClasseur
            End If
    End Sub
     
    Private Sub cmdOK_Enter()
    Num = (cbListeOngletsClasseur.ListIndex) + 1
            If Num = 0 Then
            MsgBox "Vous n'avez rien sélectionné, RECOMMENCER!!!"
            Unload fmListeOngletsClasseur
            Call ChoixOnglet
            Else
            Sheets.Item(Num).Select
            Unload fmListeOngletsClasseur
            End If
    End Sub
     
    Private Sub cmdQuitter_Click()
        fmListeOngletsClasseur.Hide
        Unload fmListeOngletsClasseur
    End Sub
     
     
    Private Sub UserForm_Initialize()
        Dim Numfeuille As Integer
        Dim NomFeuille As Variant
     
            For Numfeuille = 1 To Worksheets.Count
                NomFeuille = Worksheets(Numfeuille).Name
                cbListeOngletsClasseur.AddItem "" & NomFeuille
            Next Numfeuille
       cbListeOngletsClasseur.Style = fmStyleDropDownCombo
     
    End Sub
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    Sub ChoixOnglet()
        Load fmListeOngletsClasseur
        fmListeOngletsClasseur.Show
    End Sub
    J'ai mis 2 code dans un Module mais il ne marche pas. Je suis très nul dans userform. Pouvez vous m'éclairer ?

    Ce sera utile pour les gens qui travaillent avec les fichiers d'excel de centaines onglets.

    Merci par avance.

    P/S : j'ai fait une recherche avec mot clé "naviguer" mais les résultats ne sont pas satisfaisantes.

  2. #2
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    Le premier code est à mettre dans un UserForm !
    Pas dans un module...

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    47
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 47
    Points : 20
    Points
    20
    Par défaut
    merci Maxence

    Je suis en train de "manger" le tutoriel userform de developpez mais il parait dur.

    J'ai essaie de trouver une autre plus simple pour voir comment mettre code dans userform.

  4. #4
    Expert éminent

    Avatar de Maxence HUBICHE
    Homme Profil pro
    Développeur SQLServer/Access
    Inscrit en
    Juin 2002
    Messages
    3 842
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur SQLServer/Access

    Informations forums :
    Inscription : Juin 2002
    Messages : 3 842
    Points : 9 197
    Points
    9 197
    Par défaut
    ben...
    tu regardes dans l'explorateur de projets (en haut à gauhe de ton écran, normalement)
    Il y a un petit bouton "Afficher le code"
    Tu cliques dessus
    tu arrives alors dans un "module" UserForm1 (Code)
    Tu colles le code dedans.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    388
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 388
    Points : 437
    Points
    437
    Par défaut
    Si ton code répond à un besoin pédagogique alors continue par contre je peux te proposer le code suivant qui t'affiche la barre des onglets du classeur par un double clic et te permet de sélectionner la feuille souhaitée. J'en suis resté à Excel 2003

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub Workbook_SheetBeforeDoubleClick(ByVal Sh As Object, ByVal Target As Range, Cancel As Boolean)
        Application.CommandBars("Workbook tabs").ShowPopup '500, 200
    End Sub

    Bonne continuation avec les formulaires

Discussions similaires

  1. Classer des feuilles Excel par ordre alphabétique
    Par Invité dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/03/2013, 19h13
  2. [XL-2007] Format par défaut des feuilles EXCEL
    Par phildouja dans le forum Excel
    Réponses: 1
    Dernier message: 26/11/2010, 14h19
  3. filtrer une feuille excel par rapport a des sous totaux
    Par scons dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 07/05/2010, 16h11
  4. Liaisons entre des feuilles excel
    Par sophieb dans le forum Excel
    Réponses: 1
    Dernier message: 02/02/2009, 23h18
  5. Protection des feuilles excel par mdp
    Par zephirsoul dans le forum Excel
    Réponses: 2
    Dernier message: 27/11/2007, 17h40

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo