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 :

Créer un bouton recherche, aller à et modification


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Par défaut Créer un bouton recherche, aller à et modification
    Bonjour,

    Je suis une débutante en code VBA, je tente de mettre au point un formulaire complexe pour mon travail mais là je suis bloquée.
    J'ai créer une combobox qui va me chercher tous les noms de mon fichier et je voudrais qu'à partir de là le bouton "aller à" m'affiche toutes les données de ce nom dans mon formulaire et qu'ensuite je puisse modifier ou compléter ce formulaire que cela le réenregistre à la place des anciennes données. J'espère que j'ai été claire.
    Quelqu'un peut-il m'aider?

    J'ai fait ça, mais cela me marque toujours mon message "aucune donnée correspondante trouvée":

    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
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    Private Sub btnRecherche_Click()
     
    Dim I As Long, nbLignes As Long
    Dim Source As Worksheet
    Dim Trouve As Boolean
     
    Set Source = Sheets("Source")
    nbLignes = Source.Cells(Rows.Count, "A").End(xlUp).Row
     
     'Recherche les valeurs entrées dans txtNom
     For I = 3 To nbLignes
        If LCase(Source.Range("B" & I)) = LCase(txtNom.Value) Then
            Trouve = True
       'élève
    frmsaisie.txtPrénom.Value = Source.Cells(I, 3).Value
    frmsaisie.cboCivilité.Value = Source.Cells(I, 4).Value
    frmsaisie.txtDDN.Value = Source.Cells(I, 5).Value
    'contact
    frmsaisie.txtRespNom1.Value = Source.Cells(I, 6).Value
    frmsaisie.txtRespTel1.Value = Source.Cells(I, 7).Value
    frmsaisie.txtRespMail1.Value = Source.Cells(I, 8).Value
    frmsaisie.txtRespNom2.Value = Source.Cells(I, 9).Value
    frmsaisie.txtRespTel2.Value = Source.Cells(I, 10).Value
    frmsaisie.txtRespMail2.Value = Source.Cells(I, 11).Value
    frmsaisie.txtRespComm.Value = Source.Cells(I, 12).Value
    'scolarisation
    frmsaisie.cboCommune.Value = Source.Cells(I, 13).Value
    frmsaisie.cboEtablissement.Value = Source.Cells(I, 14).Value
    frmsaisie.cboniveau.Value = Source.Cells(I, 15).Value
    frmsaisie.cboClasse.Value = Source.Cells(I, 16).Value
    frmsaisie.cboMaintien.Value = Source.Cells(I, 17).Value
    frmsaisie.cboULIS.Value = Source.Cells(I, 18).Value
    'notifications MDPH
        'orientation1
    frmsaisie.cboOrient.Value = Source.Cells(I, 19).Value
    frmsaisie.cboEffOrien.Value = Source.Cells(I, 20).Value
    frmsaisie.txtDateCDAOr.Value = Source.Cells(I, 21).Value
    frmsaisie.txtDatefinOr.Value = Source.Cells(I, 22).Value
        'orientation2
    frmsaisie.cboOrien2.Value = Source.Cells(I, 23).Value
    frmsaisie.cboeffor2.Value = Source.Cells(I, 24).Value
    frmsaisie.txtDateCDAOr2.Value = Source.Cells(I, 25).Value
    frmsaisie.txtDatefinOr2.Value = Source.Cells(I, 26).Value
        'aide humaine
    frmsaisie.cboAH.Value = Source.Cells(I, 27).Value
    frmsaisie.cboQTAH.Value = Source.Cells(I, 28).Value
    frmsaisie.cboEffAH.Value = Source.Cells(I, 29).Value
    frmsaisie.txtDateCDAAH.Value = Source.Cells(I, 30).Value
    frmsaisie.txtDatefinAH.Value = Source.Cells(I, 31).Value
    frmsaisie.cboAESH.Value = Source.Cells(I, 32).Value
        'SMS
    frmsaisie.cboSMS.Value = Source.Cells(I, 33).Value
    frmsaisie.cboEffSMS.Value = Source.Cells(I, 34).Value
    frmsaisie.txtDateCDASMS.Value = Source.Cells(I, 35).Value
    frmsaisie.txtDatefinSMS.Value = Source.Cells(I, 36).Value
        'MPA
    frmsaisie.cboMPA.Value = Source.Cells(I, 37).Value
    frmsaisie.txtDateCDAMPA.Value = Source.Cells(I, 38).Value
    frmsaisie.txtDatefinMPA.Value = Source.Cells(I, 39).Value
    frmsaisie.txtNum.Value = Source.Cells(I, 40).Value
        'ESS
    frmsaisie.cboESSRais.Value = Source.Cells(I, 41).Value
    frmsaisie.cboPrevESS.Value = Source.Cells(I, 42).Value
    frmsaisie.txtDateESS.Value = Source.Cells(I, 43).Value
    frmsaisie.cboESSdemande.Value = Source.Cells(I, 44).Value
    frmsaisie.txtCommentaire.Value = Source.Cells(I, 45).Value
                        Exit For
                    End If
                Next
     
                If Not Trouve Then
                    MsgBox "Aucune donnée correspondante trouvée"
                End If
     
                Set Source = Nothing
     
            End Sub

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Bonjour,
    J'ai fait ça, mais cela me marque toujours mon message "aucune donnée correspondante trouvée":
    C'est que ta condition dans le if n'est jamais vraie.
    Es-tu sur de la valeur de ta combobox ?
    Tu peux afficher toutes tes égalités avec le code ci-dessous pour vérifier (à mettre juste avant le if)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    debug.print LCase(Source.Range("B" & I)) & " = " & LCase(txtNom.Value) & " ? " & LCase(Source.Range("B" & I)) = LCase(txtNom.Value)

  3. #3
    Rédacteur
    Avatar de Philippe Tulliez
    Homme Profil pro
    Formateur, développeur et consultant Excel, Access, Word et VBA
    Inscrit en
    Janvier 2010
    Messages
    13 174
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Formateur, développeur et consultant Excel, Access, Word et VBA

    Informations forums :
    Inscription : Janvier 2010
    Messages : 13 174
    Billets dans le blog
    53
    Par défaut
    Bonjour,
    Cette contribution titrée USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire est peut-être la réponse à ta question
    Philippe Tulliez
    Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément. (Nicolas Boileau)
    Lorsque vous avez la réponse à votre question, n'oubliez pas de cliquer sur et si celle-ci est pertinente pensez à voter
    Mes tutoriels : Utilisation de l'assistant « Insertion de fonction », Les filtres avancés ou élaborés dans Excel
    Mon dernier billet : Utilisation de la fonction Dir en VBA pour vérifier l'existence d'un fichier

  4. #4
    Expert confirmé Avatar de BENNASR
    Homme Profil pro
    Responsable comptable & financier
    Inscrit en
    Décembre 2013
    Messages
    2 974
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Responsable comptable & financier
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2013
    Messages : 2 974
    Par défaut
    Bonjour
    Proposition d'un débutant VBA :
    Dans un USERFORM vous mettez deux boutons de choix du type de l'opération : un nouveau client OU modification client existant
    si un nouveau client vous aurez un textbox pour saisir et s'il s'agit d'une modification vous aurez un combobox pour effectuer un choix
    voila un simple exemple à adapter à ton cas
    BONNE JOURNÉE A TOUTES & A TOUS
    Fichiers attachés Fichiers attachés

  5. #5
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Par défaut
    Citation Envoyé par BENNASR Voir le message
    Bonjour
    Proposition d'un débutant VBA :
    Dans un USERFORM vous mettez deux boutons de choix du type de l'opération : un nouveau client OU modification client existant
    si un nouveau client vous aurez un textbox pour saisir et s'il s'agit d'une modification vous aurez un combobox pour effectuer un choix
    voila un simple exemple à adapter à ton cas
    BONNE JOURNÉE A TOUTES & A TOUS
    Cette idée me plait bien il va falloir que je tente même si je dois changer mon formulaire qui est assez long car j'ai un grand nombre d'info à collecter

  6. #6
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Par défaut
    Citation Envoyé par Philippe Tulliez Voir le message
    Bonjour,
    Cette contribution titrée USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire est peut-être la réponse à ta question
    j'ai vu cette contribution mais mon niveau n'est pas assez bon j'ai pas tout compris

  7. #7
    Membre à l'essai
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 50
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2019
    Messages : 4
    Par défaut
    Citation Envoyé par halaster08 Voir le message
    Bonjour,

    C'est que ta condition dans le if n'est jamais vraie.
    Es-tu sur de la valeur de ta combobox ?
    Tu peux afficher toutes tes égalités avec le code ci-dessous pour vérifier (à mettre juste avant le if)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    debug.print LCase(Source.Range("B" & I)) & " = " & LCase(txtNom.Value) & " ? " & LCase(Source.Range("B" & I)) = LCase(txtNom.Value)
    j'ai essayé mais cela ne m'a rien fait

  8. #8
    Expert confirmé
    Homme Profil pro
    Responsable des études
    Inscrit en
    Juillet 2014
    Messages
    2 681
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Aude (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable des études
    Secteur : Santé

    Informations forums :
    Inscription : Juillet 2014
    Messages : 2 681
    Par défaut
    Citation Envoyé par nadegewen Voir le message
    j'ai essayé mais cela ne m'a rien fait
    Debug.print permet juste d'afficher dans la fenêtre de debug, c'est a toi d'aller voir dedans pour essayer de comprendre ce qui ne marche pas dans ton code
    Vu que tu t'attend à ce que ta condition soit vraie à un moment il te faut trouver cette ligne dans le debug et voir quelles sont les valeurs prise par tes variables à ce moment là.

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

Discussions similaires

  1. Créer un bouton recherche et zone de texte pour une base de données excel
    Par Jeremy2109 dans le forum Macros et VBA Excel
    Réponses: 37
    Dernier message: 13/03/2015, 09h12
  2. Perdu pour créer ma requête
    Par LucasB16 dans le forum Langage SQL
    Réponses: 8
    Dernier message: 26/08/2014, 15h29
  3. [AC-2003] créer un bouton recherche associé à un etat access
    Par facteur dans le forum IHM
    Réponses: 3
    Dernier message: 17/12/2013, 16h50
  4. Besoin d'aide pour créer des boutons de lecture
    Par bidays dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 08/07/2012, 19h51
  5. [XLS-03] aide pour créer un bouton PRINT
    Par Biker-Robby dans le forum Excel
    Réponses: 4
    Dernier message: 13/01/2008, 17h47

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