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 :

Afficher une seule colonne de la même ligne VBA


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 141
    Par défaut Afficher une seule colonne de la même ligne VBA
    BONJOUR ,


    Normalement quand je clique sur une valeur dans cette COMBOBOX3 ( qui se trouve dans la colonne D = 4 ) je dois afficher le libelle de la colonne E dans la LISTBOX2 or que ça m'affiche toute la ligne .

    Je fais comment ?

    Je vous remercie d'avance.

    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
     
     
    Private Sub ComboBox3_click()
     
    On Error GoTo errorHandler
     
      Me.ListBox2.Clear
     
      j = 0
      n = Application.CountIf(Application.Index(Rnge, , 4), Me.ComboBox3)
      Dim b()
      ReDim b(1 To n, 1 To Ncol1 + 1)
      For i = LBound(BD1) To UBound(BD1)
        If Me.ComboBox3 = BD1(i, 4) Then
          j = j + 1
          For k = 1 To Ncol1
            b(j, k) = BD1(i, k)
            If k >= 3 And k <= 5 Then b(j, k) = Format(BD1(i, k), "00 00 00 00 00")
          Next k
          b(j, k) = i
        End If
    Next i
     
       ListBox2.List = b
       ListBox2.ListIndex = 0
     
     
     
    Exit Sub
    errorHandler:
        MsgBox Err.Number & vbLf & Err.Description
     
    End Sub
    Private Sub ComboBox3_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
     
    On Error GoTo errorHandler
     
      Me.ComboBox3.DropDown
     
    Exit Sub
    errorHandler:
        MsgBox Err.Number & vbLf & Err.Description
     
    End Sub

  2. #2
    Membre éprouvé Avatar de Wololol
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 104
    Par défaut
    Bonjour,

    Peux-tu nous envoyer ton code afin qu'on puisse trouver où est le problème ?

    Bonne journée

  3. #3
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 141
    Par défaut
    Je vais modifier mon Message et mettre le code entier ! Merci beaucoup

  4. #4
    Membre éprouvé Avatar de Wololol
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 104
    Par défaut
    Re,

    Je sais pas si c'est moi, mais ce code a l'air anormalement complexe pour ce qu'il est censé faire oO.

    Je ne comprend pas trop le lien qui lit les éléments de ton ComboBox avec ta colonne E.

    En gros, tu as également le contenu de ta ComboBox dans la colonne D qui est relié à un texte dans la colonne E ?

    De plus, que fais ce b(j, k) = i isolé de ta boucle for ?

  5. #5
    Membre confirmé
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    141
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 141
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    If Me.ComboBox3 = BD1(i, 4) Then
    ici le numéro 4 indique la colonne D et donc une fois je clique sur l'une des valeurs de cette colonne dans la comboBox il va afficher toute la ligne correspondante ( cela fonctionne parfaitement ) or que moi je veux afficher qu'une colonne précise c'est la colonne E ( la colonne 5 ) pas toute la ligne mais ça je n'ai pas su le faire ..

  6. #6
    Membre éprouvé Avatar de Wololol
    Homme Profil pro
    Étudiant
    Inscrit en
    Avril 2018
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Avril 2018
    Messages : 104
    Par défaut
    Re,

    Voici un code que j'ai écrit sur un nouveau classeur :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    Private Sub ComboBox1_Click()
        For i = 1 To Range("D" & Rows.Count).End(xlUp).Row
            If ComboBox1 = Range("D" & i).Value Then
                ListBox1.AddItem Cells(i, 5).Value
            End If
        Next
    End Sub
    Ici on compare la valeur de la ComboBox avec ta colonne D, afin de récupérer la coordonnée de la ligne (i), puis on prend uniquement la valeur de la Cellule (i,5) qui correspond à ce que tu cherche.

    Après, vu que je ne connais pas tes variables, tu va devoir l'adapter.

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

Discussions similaires

  1. [AC-2010] Erreur "incompatibilité de type"
    Par oreoolep dans le forum VBA Access
    Réponses: 4
    Dernier message: 02/12/2011, 22h29
  2. Erreur incompatibilité de type au lancement formulaire
    Par koluche dans le forum VBA Access
    Réponses: 0
    Dernier message: 05/05/2011, 15h59
  3. Erreur "incompatibilité de type" lors import dans table Access
    Par spud96 dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 05/01/2011, 22h40
  4. erreur incompatibilité de type
    Par prince19 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/06/2007, 12h43
  5. [VBA E]erreur incompatibilité de type que je ne comprend pas
    Par zoumzoum59 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 07/07/2006, 15h14

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