Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Microsoft 365 Listbox alimentée par Combobox

  • Initiateur de la discussion Initiateur de la discussion eric72
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

eric72

XLDnaute Accro
Bonjour à tous,
J'ai récupéré un code grâce aux nombreuses vidéos proposées, j'ai donc crée un userform pour modifier un "produit" dans lequel j'ai mis un listbox qui s'alimente à l'ouverture, mais j'aimerais pouvoir l'alimenter lorsque je choisis un fournisseur dans ma combobox, et là JE BLOQUE.
Quelqu'un aurait il une solution à me proposer( je suis pas top en vba).
Merci d'avance pour votre dévouement.
Eric
 

Pièces jointes

OK. Ajoute cette macro dans le userform :

VB:
Private Sub CbFournisseur_Change()
  Me.ListView1.ListItems.Clear
  derligne = Feuil3.Cells(Rows.Count, 3).End(xlUp).Row
 
  For i = 2 To derligne
 
      Critere = Feuil3.Cells(i, 12)
      Select Case Critere
 
          Case Is <> ""
              Couleur = RGB(255, 0, 0)
          Case Is = ""
              Couleur = RGB(0, 0, 0)
 
      End Select
        If Feuil3.Cells(i, 3) = Me.CbFournisseur.Value Then
          Set Item = ListView1.ListItems.Add(Text:=Feuil3.Cells(i, 1))
          Item.ForeColor = Couleur
          Item.SubItems(1) = Feuil3.Cells(i, 2)
          Item.ListSubItems(1).ForeColor = Couleur
          Item.SubItems(2) = Feuil3.Cells(i, 3)
          Item.ListSubItems(2).ForeColor = Couleur
          Item.SubItems(3) = Feuil3.Cells(i, 4)
          Item.ListSubItems(3).ForeColor = Couleur
          Item.SubItems(4) = Feuil3.Cells(i, 5)
          Item.ListSubItems(4).ForeColor = Couleur
          Item.SubItems(5) = Format(Feuil3.Cells(i, 6), "0Kg")
          Item.ListSubItems(5).ForeColor = Couleur
          Item.SubItems(6) = Format(Feuil3.Cells(i, 7), "# ##0.00 €")
          Item.ListSubItems(6).ForeColor = Couleur
          Item.SubItems(7) = Feuil3.Cells(i, 8)
          Item.ListSubItems(7).ForeColor = Couleur
          Item.SubItems(8) = Format(Feuil3.Cells(i, 9), "0Kg")
          Item.ListSubItems(8).ForeColor = Couleur
          Item.SubItems(9) = Feuil3.Cells(i, 10)
          Item.ListSubItems(9).ForeColor = Couleur
          Item.SubItems(10) = Feuil3.Cells(i, 11)
          Item.ListSubItems(10).ForeColor = Couleur
          Item.SubItems(11) = Format(Feuil3.Cells(i, 12), """Commander")
          Item.ListSubItems(11).ForeColor = Couleur
        End If
      Next
End Sub

Daniel
 
Remplace le code que e t'ai fourni par :

VB:
Private Sub CbFournisseur_Change()
  Dim Ctr
  Me.ListView1.ListItems.Clear
  derligne = Feuil3.Cells(Rows.Count, 3).End(xlUp).Row
  Ctr = 0
  For i = 2 To derligne
 
      Critere = Feuil3.Cells(i, 12)
      Select Case Critere
 
          Case Is <> ""
              Couleur = RGB(255, 0, 0)
          Case Is = ""
              Couleur = RGB(0, 0, 0)
 
      End Select
        If Feuil3.Cells(i, 3) = Me.CbFournisseur.Value Then
          Ctr = Ctr + Feuil3.Cells(i, 10)
          Set Item = ListView1.ListItems.Add(Text:=Feuil3.Cells(i, 1))
          Item.ForeColor = Couleur
          Item.SubItems(1) = Feuil3.Cells(i, 2)
          Item.ListSubItems(1).ForeColor = Couleur
          Item.SubItems(2) = Feuil3.Cells(i, 3)
          Item.ListSubItems(2).ForeColor = Couleur
          Item.SubItems(3) = Feuil3.Cells(i, 4)
          Item.ListSubItems(3).ForeColor = Couleur
          Item.SubItems(4) = Feuil3.Cells(i, 5)
          Item.ListSubItems(4).ForeColor = Couleur
          Item.SubItems(5) = Format(Feuil3.Cells(i, 6), "0Kg")
          Item.ListSubItems(5).ForeColor = Couleur
          Item.SubItems(6) = Format(Feuil3.Cells(i, 7), "# ##0.00 €")
          Item.ListSubItems(6).ForeColor = Couleur
          Item.SubItems(7) = Feuil3.Cells(i, 8)
          Item.ListSubItems(7).ForeColor = Couleur
          Item.SubItems(8) = Format(Feuil3.Cells(i, 9), "0Kg")
          Item.ListSubItems(8).ForeColor = Couleur
          Item.SubItems(9) = Feuil3.Cells(i, 10)
          Item.ListSubItems(9).ForeColor = Couleur
          Item.SubItems(10) = Feuil3.Cells(i, 11)
          Item.ListSubItems(10).ForeColor = Couleur
          Item.SubItems(11) = Format(Feuil3.Cells(i, 12), """Commander")
          Item.ListSubItems(11).ForeColor = Couleur
        End If
      Next
      Me.TxtValStock.Text = Ctr
End Sub

Daniel
 
Super le seul petit hic c'est qu'à l'initialize du USF il ne met pas le total de l'ensemble du stock (oui je sais je suis un peu un boulet) hi hi!!!
Merci et après je vous laisse tranquille pour diner
Eric
 
Remplace la macro Actualisation par celle-ci :

VB:
Private Sub Actualisation()


    Dim Item As ListItem
    Dim derligne As Integer
    Dim i As Integer
    Dim Couleur As Variant
    Dim Critere As Variant
    Dim Ctr As Double
    ListView1.ListItems.Clear
    derligne = Feuil3.Cells(Rows.Count, 3).End(xlUp).Row
    
    For i = 2 To derligne
    
        Critere = Feuil3.Cells(i, 12)
        Select Case Critere
    
            Case Is <> ""
                Couleur = RGB(255, 0, 0)
            Case Is = ""
                Couleur = RGB(0, 0, 0)
    
        End Select
            Ctr = Ctr + Feuil3.Cells(i, 10)
            Set Item = ListView1.ListItems.Add(Text:=Feuil3.Cells(i, 1))
            Item.ForeColor = Couleur
            Item.SubItems(1) = Feuil3.Cells(i, 2)
            Item.ListSubItems(1).ForeColor = Couleur
            Item.SubItems(2) = Feuil3.Cells(i, 3)
            Item.ListSubItems(2).ForeColor = Couleur
            Item.SubItems(3) = Feuil3.Cells(i, 4)
            Item.ListSubItems(3).ForeColor = Couleur
            Item.SubItems(4) = Feuil3.Cells(i, 5)
            Item.ListSubItems(4).ForeColor = Couleur
            Item.SubItems(5) = Format(Feuil3.Cells(i, 6), "0Kg")
            Item.ListSubItems(5).ForeColor = Couleur
            Item.SubItems(6) = Format(Feuil3.Cells(i, 7), "# ##0.00 €")
            Item.ListSubItems(6).ForeColor = Couleur
            Item.SubItems(7) = Feuil3.Cells(i, 8)
            Item.ListSubItems(7).ForeColor = Couleur
            Item.SubItems(8) = Format(Feuil3.Cells(i, 9), "0Kg")
            Item.ListSubItems(8).ForeColor = Couleur
            Item.SubItems(9) = Feuil3.Cells(i, 10)
            Item.ListSubItems(9).ForeColor = Couleur
            Item.SubItems(10) = Feuil3.Cells(i, 11)
            Item.ListSubItems(10).ForeColor = Couleur
            Item.SubItems(11) = Format(Feuil3.Cells(i, 12), """Commander")
            Item.ListSubItems(11).ForeColor = Couleur
        Next
        Me.TxtValStock.Text = Ctr
    
End Sub
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
0
Affichages
684
Réponses
2
Affichages
424
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…