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 :

Autotabulation pour recherche dans un formulaire [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut Autotabulation pour recherche dans un formulaire
    Bonjour

    Voila j'ai adapté du code à mon application, qui fonctionne en partie mais j'ai des soucis avec la fonction auto tabulation qui ne fonctionne pas.Il est vrais que je n'ai pas tout compris ce code
    La fonction est de rechercher dans toutes les colonnes la lettre ou le chiffre tapé dans le label Tbx1,puis d'affiner au fur et à mesure des valeurs entrées dans TBX1
    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
    Private Sub Tbx1_Change()
    On Error Resume Next
    Application.ScreenUpdating = False
    t = Range("A3:I" & Range("A65536").End(xlUp).Row)
    Lbx1.Clear
    x = 1
    For i = 1 To UBound(t)
    For j = 1 To 9
    If Left(t(i, j), Len(Tbx1)) = Left(Tbx1, Len(Tbx1)) Then
    ReDim Preserve ta(1 To 9, 1 To x)
    For k = 1 To 9
    ta(k, x) = t(i, k)
    Next k: x = x + 1: End If: Next j: Next i
    Lbx1.List = Application.Transpose(ta)
    If x - 1 = 1 Then
    For e = 1 To 9
    Controls("Textbox" & e) = Lbx1.List(Lbx1.ListIndex + e)
    Next e: Lbx1.Clear: End If
    Erase t, ta
    If Tbx1 = "" Then
    Lbx1.Clear: Label2.Caption = ""
    For e = 1 To 9: Controls("Textbox" & e) = "": Next e: Lbx1.Clear: End If
    Beep
    End Sub
    merci
    Fichiers attachés Fichiers attachés

  2. #2
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Bonjour,

    Il fonctionne bien ton code.
    Peux tu nous expliquer l'utilité de la propriété Autotab dans ce code. qu'en attends tu ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut
    Ce que je veux dire c'est lorsque l'on entre une lettre dans la case recherche ,un certain nombre de mots s'affichent ,si l'on entre une deuxième lettre tous les mots ne comportant pas cette lettre sont effacer. A la limite si l'on entre le mot complet il ne restera que celui la dans le tableau.

  4. #4
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    A la limite si l'on entre le mot complet il ne restera que celui la dans le tableau.
    C'est bien ce que fait ton code.
    Ce n'est pas ce que tu veux?


    Désolé, mais je n'arrive pas a cerner ton problème

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    57
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 57
    Par défaut
    Bonjour merci de me repondre

    Si cela fonctionne chez vous,ce n'est pas le cas pour moi ,à la première lettre entrée cela fonctionne mais à la deuxième lettre entrée le tableau se vide totalement.
    je suis sous exel 2007
    merci

  6. #6
    Expert confirmé Avatar de jfontaine
    Homme Profil pro
    Contrôleur de Gestion
    Inscrit en
    Juin 2006
    Messages
    4 756
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Contrôleur de Gestion

    Informations forums :
    Inscription : Juin 2006
    Messages : 4 756
    Par défaut
    Avec Excel 2010, ça fonctionne.
    Avec Excel 2003, ça ne fonctionne pas (même la première lettre)

    Je regarde pour une adaptation de ton code dans la soirée

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 23/05/2007, 08h31
  2. Recherche dans sous formulaires
    Par dfournier dans le forum IHM
    Réponses: 5
    Dernier message: 08/12/2005, 18h43
  3. Recherche dans un formulaire
    Par Marmouz dans le forum IHM
    Réponses: 13
    Dernier message: 25/10/2005, 16h03
  4. Recherche dans un formulaire
    Par Marmouz dans le forum Access
    Réponses: 4
    Dernier message: 03/10/2005, 13h14
  5. Recherche dans un formulaire
    Par Marmouz dans le forum Access
    Réponses: 5
    Dernier message: 22/09/2005, 10h09

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