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 :

Formulaire remplir ListBox ou ComboBox à l'aide d'un autre ComboBox


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
    Étudiant
    Inscrit en
    Mars 2019
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 56
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2019
    Messages : 4
    Par défaut Formulaire remplir ListBox ou ComboBox à l'aide d'un autre ComboBox
    Bonjour
    j'espère que quelqu'un pourra m'aider dans le formulaire suivant:
    Nom : formulaire.png
Affichages : 1002
Taille : 61,8 Ko

    Je désire utiliser le choix d'aliment consommé (ComboBox intitulé "ChoAliment") pour remplir le combobox4 en faisant la recherche de la valeur ChoAliment dans la colonne L_Aliment (colonne A) et en inscrivant la valeur inscrite dans la colonne B adjacente (ceci pourrait également utiliser un ListBox je crois à la place)

    J'ai déjà inscrit la formule suivante, mais j'ai comme résultat toutes les valeurs de la colonne B et non seulement la valeur désirée.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    Private Sub ComboBox4_Change()
    Dim aliments As Long, i As Long
     
    aliments = WorksheetFunction.CountA(Feuil2.Columns(1)) - 1
    For i = 2 To aliments + 1
        If WorksheetFunction.Count(Feuil2.Range(Cells(1, 1), Cells(i - 1, 1)), Cells(i, 1)) = 0 Then
                ComboBox4.AddItem (Feuil2.Cells(i, 2))
            Else
        End If
    Next i
    End Sub
    Pouvez-vous m'aider à modifier ma formule svp
    merci

  2. #2
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonjour Natadam, bonjour le forum,

    Pas sûr d'avoir tout compris, donc désolé si je suis hors sujet...

    Je ne vois pas très bien l'utilité d'une ComboBox (ni d'une ListBox d'ailleurs) si, pour un aliment désigné, il n'y a qu'une seule portion possible, comme semble l'indiquer ta capture d'écran.
    Je verrai plutôt une TextBox avec un code utilisant la propriété ListIndex de la Combobox ChoAliment.

    En admettant que l'onglet se nomme Ton_Onglet et que la TextBox se nomme TextBox1, ça donnerait un code du type :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Private Sub ChoAliment_Change()
    Me.TextBox1.Value = Worksheets("Ton_Onglet").Cells(Me.ChoAliment.ListIndex + 2, "B").Value
    End Sub

  3. #3
    Membre habitué
    Homme Profil pro
    Comptable
    Inscrit en
    Janvier 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2019
    Messages : 10
    Par défaut INCRÉMENTATION
    Bonjour à tous,

    j'ai créer un formulaire sur excel via le VBA mais je bloque sur un petit détail. j'aimerai que les données s'incrémentent dans le tableau ligne après ligne sans en créer de nouvelle.

    ex: les données se mettent en B11, C11, D11 (le tableau commence en ligne 11); ensuite B12,C12,D12 etc... sans sortir du tableau qui se finit en ligne 22.

    Bien cordialement.

  4. #4
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Bonjour Nosma, bonjour le forum,

    Tu aurais dû créer un nouveau post car tu pollues le fil de Natadam avec un sujet qui n'a pas vraiment de rapport !... Tu le sauras pour la prochaine fois ...
    Sinon une piste : J'imagine que ton formulaire a un bouton Valider, le code de ce bouton :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Private Sub CommandButton1_Click()
    Dim O As Worksheet 'déclare la variable O (Onglet)
    Dim LI As Integer 'déclare la variable LI (LIgne)
     
    Set O = Worksheets("Feuil1") 'définit l'onglet O (à adapter à ton cas)
    'définit la ligne LI (11 si B11 est vide, sinon la première ligne vide de la colonne B
    LI = IIf(O.Cells(11, "B").Value = "", 11, O.Cells(Application.Rows.Count, "B").End(xlUp).Row + 1)
    If LI > 22 Then Exit Sub 'si LI est supérieure a 22, sort de la procédure
    O.Cells(LI, "B").Value = TextBox1.Value 'un exemple de comment renvoyer les valeur d'un contrôle dans la ligne LI colonne B (à adapter à ton cas)
    O.Cells(LI, "C").Value = TextBox2.Value 'un exemple de comment renvoyer les valeur d'un contrôle dans la ligne LI colonne C (à adapter à ton cas)
    O.Cells(LI, "D").Value = TextBox3.Value 'un exemple de comment renvoyer les valeur d'un contrôle dans la ligne LI colonne D (à adapter à ton cas)
    End Sub

  5. #5
    Membre habitué
    Homme Profil pro
    Comptable
    Inscrit en
    Janvier 2019
    Messages
    10
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Comptable
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2019
    Messages : 10
    Par défaut INCRÉMENTATION
    Bonjour Thauthème,

    désolé je ne savais, encore désolé pour NATADAM , la prochaine fois je créerai un forum c'est entendu.

    du coup la faut que j'en créer un ou je peut continuer à répondre sur celui la?

  6. #6
    Membre Expert Avatar de Thautheme
    Homme Profil pro
    salarié
    Inscrit en
    Août 2014
    Messages
    1 373
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 64
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : salarié

    Informations forums :
    Inscription : Août 2014
    Messages : 1 373
    Par défaut
    Re,

    Crée, crée (disait l'ardoise)... Un fil, ça suffira. Un forum c'est peut-être excessif non ?!...

Discussions similaires

  1. Réponses: 6
    Dernier message: 24/06/2014, 15h25
  2. [AC-2003] remplir une table a l'aide d'une autre
    Par host22 dans le forum Access
    Réponses: 9
    Dernier message: 24/03/2010, 08h26
  3. Réponses: 14
    Dernier message: 27/10/2006, 23h15
  4. [VBA-E] Remplir une listbox à l'ouverture d'un formulaire
    Par fred bx dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 02/06/2006, 13h25
  5. [VBA-E]Remplir combobox avec contenu d'une feuille Excel
    Par Deejoh dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/03/2006, 16h16

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