Fonction recherche d'un anglet avec un Userform

Bonjour la Team ,

je suis a la recherche d'un code VBA qui me permettrais de faire une recherche par anglets et pouvoir afficher la feuille de mon agent suivant ce que je saisie dans la barre de recherche, comme dans les images ci dessous :

1 - saisir le nom de mon agent

2 - dans ma textBox 2 il m'affiche le resultat trouvé.

3- quand je clique sur le résultat puis séléctionner , le userform se ferme et m'affiche l'anglet de l'agent concerné.

kmrnceu

sachant que ma recherche doit s'opérer sur les noms des anglet.

zazoqic

Merci d'avance pour votre aide, et tout autre proposition sera toujours la bienvenue

J e joins un fichier test

15zed21000-v-0.xlsm (21.38 Ko)

Bonjour ZED21000, le forum,

Tu veux afficher quoi dans ta textbox2 ? Tous tes onglets sont vierges....

10zed21000-v-0-1.xlsm (23.74 Ko)

Cordialement,

Bonjour,

une variante avec une macro pour création ou mise à jour de la liste … puis un sélecteur d'onglet dans le userform.

Nota la mise à jour de la liste est aussi prévue à l'ouverture du fichier.

24zed21000-v0-1.xlsm (26.00 Ko)

Bien entendu c'est pour des "onglets" pas des "anglets"

Bonjour ZED21000, le forum,

Tu veux afficher quoi dans ta textbox2 ? Tous tes onglets sont vierges....

Cordialement,

Bonjour xorsankukai

en faite dans mon fichier dans chaque feuille y a des information péronnelles pour chaque agent.

je me suis mal exprimé peut etre : je voulais qu'il m'affiche le nom de l'onglet

Exmple Fred : si je saisie dans le champ de recherche Fred dans les résultats il me trouve l'onglet Fred et si je clique sur sélectionner il m'affiche la feuille de Fred et le UserForm se ferme. je ne sais pas si c'est possible ?

p4yeoie

Re,

Merci pour ton retour.

As-tu tester mon fichier ? Il devrait répondre à ta demande.

Sinon, la proposition de Xmenpl est plus pertinente, tu ne peux sélectionner que les onglets existants,

Cordialement,

Bonjour,

une variante avec une macro pour création ou mise à jour de la liste … puis un sélecteur d'onglet dans le userform.

Nota la mise à jour de la liste est aussi prévue à l'ouverture du fichier.

ZED21000_V0(1).xlsm

Bien entendu c'est pour des "onglets" pas des "anglets"

Bonjour Xmenpl

Merci pour ta proposition, c'est parfait et ça me convient. c'est ce que je cherchais a faire.

Pour l'actualisation des onglet : si j'ai bien compris a chaque fois qu'un nouveau onglet se créer, si je clique sur le bouton actualiser la liste, le nouveau onglet se rajoute automatiquement ?

Au plus simple oui la liste est regénérée entièrement (donc nouveaux onglets ou onglets modifiés) après :

  • Clic sur le bouton
  • et à l'ouverture du fichier.

Re,

Merci pour ton retour.

As-tu tester mon fichier ? Il devrait répondre à ta demande.

Sinon, la proposition de Xmenpl est plus pertinente, tu ne peux sélectionner que les onglets existants,

Cordialement,

Oui xorsankukai je l'ai tester et je te remercie mon ami pour ton aide. Effectivement la proposition de Xmenpl est plus pertinente et ça répond a ce que je cherchais.

Merci a vous deux pour votre aide le temps que vous m'avez consacré.

Au plus simple oui la liste est regénérée entièrement (donc nouveaux onglets ou onglets modifiés) après :

  • Clic sur le bouton
  • et à l'ouverture du fichier.

D'accord bien compris et c'est super.

Bonne journée a vous deux

Sinon, la proposition de Xmenpl est plus pertinente, tu ne peux sélectionner que les onglets existants,

Merci du compliment, j'espère que je vais pas attraper la grosse tête

Merci a vous deux pour votre aide le temps que vous m'avez consacré.

Re,

Une variante.....

36zed21000-v-0-1.xlsm (24.67 Ko)

A bientôt ,

Merci du compliment, j'espère que je vais pas attraper la grosse tête

Non pas du tout vous êtes tout simplement géniaux sur ce forum mon ami depuis que je me suis inscris, j'arrête pas d'apprendre avec vous tous.

waw tu est génial , l'actualisation se fait automatiquement dans la comboList, c'est exactement ce que je veux avoir

A croire que tu as lu ce que j'avais en tête

c'est parfait tu as résolu mon problème.

Merci a toi aussi xorsankukai

Bonjour

Une autre solution pour la Combobox

Private Sub UserForm_Initialize()
Dim Feuil As Object
ComboBox1.Clear
   For Each Feuil In Worksheets
      If Feuil.Name <> Feuil1.Name Then
            ComboBox1.AddItem Feuil.Name
      End If
   Next
End Sub

Private Sub ComboBox1_Change()
    Sheets(ComboBox1.Value).Select
    Application.Goto [A1], True
    Unload Me
End Sub

A+

Maurice

Très court et efficace Archer !

Effectivement, c'est nettement mieux ainsi,

Bravo Archer,

Bonjour

Une autre solution pour la Combobox

A+

Maurice

Bonjour Archer

Je confirme ton code est court, net et précis rien à dire et il fonctionne bien comme il faut.

Merci d'avoir enrichi le sujet, ça donne du coup beaucoup de solutions efficaces les unes que les autres magnifiques.

Bonjour

merci a tous

au plaisir

A+

Maurice

Bonjour

Une autre solution pour la Combobox

Private Sub UserForm_Initialize()
Dim Feuil As Object
ComboBox1.Clear
   For Each Feuil In Worksheets
      If Feuil.Name <> Feuil1.Name Then
            ComboBox1.AddItem Feuil.Name
      End If
   Next
End Sub

Private Sub ComboBox1_Change()
    Sheets(ComboBox1.Value).Select
    Application.Goto [A1], True
    Unload Me
End Sub

A+

Maurice

Bonjour archer,

j'ai une dernière question concernant ton code magique qui fonctionne très bien.

Dans mon classeur j'ai des onglets que je ne veux pas qu'il s'affiche dans ma Combobox1 et je voudrais les exclures de la liste de recherche.

  • Feuille MDP ( pour le changement de mot de passe)
  • Feuille Admin ( qui gère les mots de passe et protéger par mot de passe).

plus simple, dire afficher tout les onglets du classeur dans ma combobox1, a l’exception des feuilles nommées MDP et Admin.

c'est faisable?

Bonjour,

Sinon pour activer un onglet par son nom, YAKA faire un Clic Droit sur la Liste des Onglets (en bas à gauche des feuilles...)

N'affiche que les noms des feuilles visibles...

diallistfich

A+

Bonjour

pour exclure les onglet il faut jouer avec les codeName

A voir

Private Sub UserForm_Initialize()
Dim I&
ComboBox1.Clear
    For I = 1 To Sheets.Count
        Select Case Sheets(I).Name
            Case Feuil1.Name, Feuil2.Name ' exclure par le CodeName.Name
            Case Else
                ComboBox1.AddItem Sheets(I).Name
        End Select
    Next I
End Sub

A+

Maurice

Rechercher des sujets similaires à "fonction recherche anglet userform"