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 :

Problème VBA: Lire la valeur d'une cellule avec un bouton


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Août 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 32
    Par défaut Problème VBA: Lire la valeur d'une cellule avec un bouton
    Bonjour,

    Lorsque je tape manuellement un texte dans un texbox1 j’aimerai trouver la valeur tapée de textbox1 dans la feuille Excel avec un bouton « Find » et en appuyant sur un autre bouton « Next » j’aimerai lire la valeur de ligne de dessous et afficher la valeur dans le textbox1.

    J’arrive à trouver la valeur qui est tapé dans le textbox 1 manuellement et sélectionné la ligne, mais je ne sais pas comment lire la ligne du bas en appuyant sur le bouton "Next"et affiché la valeur.

    J’utilise le code suivant

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Private Sub CommandButton_Find_Click()
    Dim nom As Range
    With ThisWorkbook.Sheets("Sheet1")
            For Each nom In .Range("A2:A" & .[A6000].End(xlUp).Row)     ' lis la val. présent dans le texte box
                If nom = Me.TextBox1.Value Then
                    .Cells(nom.Row, "A").Select          ' sélectionne la ligne dans la colonne A
                End If
            Next nom
    End With
    End Sub
    __________________________________________________________________________________
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Private Sub CommandButtonNext_Click()
     
    ??????     	'Je ne sais pas comment faire.
     
    End Sub
    Merci de votre aide rapide.

  2. #2
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Si le "Next" est envoyé juste après le "Find" sans autre manipulation entre les deux :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.TextBox1.Value = Selection.Offset(1, 0).Value

  3. #3
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Août 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 32
    Par défaut Problème VBA: Lire la valeur d'une ligne avec offset avec un bouton
    Bonjour,

    j'ai modifié un peu la condition, je n'aimerais plus utiliser le bouton "Find" mais tout faire avec le bouton "Next"

    ci-dessous le code, mais rien ne s'affiche dans le textbox1, la ligne n'est pas non plus sélectionné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
    Private Sub CommandButtonNext_Click()
     
    Dim nom As Range
     
    With ThisWorkbook.Sheets("Sheet1")
            For Each nom In .Range("A2:A" & .[A6000].End(xlUp).Row)    ' lis la val. présent dans le texte box
                If nom = Me.TextBox1.Value Then                              
                    Me.TextBox1.Value = .Cells(nom.Row, "A").Offset(1, 0).Value
                    .Cells(nom.Row, "A").Select
     
                End If
            Next nom
     
    End With
     
    End Sub
    Merci pour l'aide.

  4. #4
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Citation Envoyé par New_VBA_User Voir le message
    ci-dessous le code, mais rien n'affiche dans le textbox1, ni la ligne est sélectionné.
    Fais tourner ta macro en pas-à-pas pour voir par où passe le code, tout en surveillant le contenu des variables (en particulier "nom") dans la liste des variables locales.

  5. #5
    Membre averti
    Homme Profil pro
    Technicien maintenance
    Inscrit en
    Août 2019
    Messages
    32
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : Suisse

    Informations professionnelles :
    Activité : Technicien maintenance
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2019
    Messages : 32
    Par défaut Problème VBA: Lire la valeur d'une ligne avec offset avec un bouton
    Citation Envoyé par Menhir Voir le message
    Fais tourner ta macro en pas-à-pas pour voir par où passe le code, tout en surveillant le contenu des variables (en particulier "nom") dans la liste des variables locales.
    j'ai essayé en pas à pas, la valeur de ligne du bas s'affiche et la ligne est sélectionné aussi mais avec un tour de retard.

    lors que je test normalement, et j'entre la valeur dans le texdtbox1 et que j'appuie sur le bouton "Next" la valeur disparait du textbox1 et la dernière ligne est sélectionné.

    je ne comprend pas pourquoi?

    Merci pour l'aide.

  6. #6
    Expert éminent Avatar de Menhir
    Homme Profil pro
    Ingénieur
    Inscrit en
    Juin 2007
    Messages
    16 037
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2007
    Messages : 16 037
    Par défaut
    Mets un Exit For juste avant ton End If.

Discussions similaires

  1. VBA remplacer la valeur d'une cellule par la valeur de la cellule au dessus
    Par marseille13 dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 15/06/2018, 17h07
  2. VBA Copier la valeur d'une cellule dans feuille
    Par Apdil dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 16/03/2018, 09h56
  3. Réponses: 1
    Dernier message: 13/04/2015, 11h17
  4. Réponses: 15
    Dernier message: 26/01/2015, 19h37
  5. [XL-2003] Lire la valeur d'une cellule nommée d'un classeur avec VBA ?
    Par marot_r dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 29/03/2011, 13h36

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