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

AIde sur code VBA

  • Initiateur de la discussion Initiateur de la discussion mamatt62
  • 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 !

M

mamatt62

Guest
Bonjour,

vous trouverez en pièce jointe le fichier que je tente de faire.

Le bouton pour afficher le formulaire se trouve en feuille 2 cependant tout fonctionne mise a part le fait que mes prix affichés sont toujours les 3 mêmes ( soient ceux des 3 premiers véhicules) et je n'arrive pas à faire en sorte que cela s'applique sur l'ensemble des véhicules.

Si qq1 pouvait m'indiquer la manipulation à faire ce serait top.

Merci d'avance pour votre aide.

Je suis sur le pc donc si vous avez des questions n'hésitez pas je vous répondrais le plus vite possible.
 

Pièces jointes

Re : AIde sur code VBA

Salut Mamatt62

Cela me parait logique, puisque pour nous tu n'as qu'une seule colonne de prix !?
Comment les tarifs peuvent-ils être différend ?

A+
 
Re : AIde sur code VBA

Bonjour Bruno,

c'est le fait d'avoir un 1 dans la colonne qui détermine le montant des équipements par modèles. Donc pour les mII j'ai bien les valorisation pour ces 3 modèles et ils sont bons mais j'ai les mêmes valorisation pour les autres modèles alors qu'ils devraient être différents.
 
Re : AIde sur code VBA

Re,

Autant pour moi, c'est le calcul de la colonne qui est complètement faux 🙁😱

Il faut :
1) trouver la 1ère colonne de la marque
2) additionner à cette colonne le choix du modèle
Code:
' Col = 1ère colonne trouvée de la marque + choix du modèleCol = Application.WorksheetFunction.Match(Me.CbBMarques1, Sheets("Feuil1").Rows(1), 0)
Col = Col + Me.ComboBox1.ListIndex

Il faut donc changer les 2 codes des Combobox1 et 2 par
VB:
Private Sub ComboBox1_Change()
  Dim Col As Integer, DLig As Long, Lig As Long, Tot As Single
  ' Vider la Listbox des options et prix
  Me.ListBox1.Clear
  ' Col = 1ère colonne trouvée de la marque + choix du modèle
  Col = Application.WorksheetFunction.Match(Me.CbBMarques1, Sheets("Feuil1").Rows(1), 0)
  Col = Col + Me.ComboBox1.ListIndex
  ' Si aucun choix fait dans le modèle, on sort
  If Me.ComboBox1.ListIndex = -1 Then Exit Sub
  ' Sinon on récupère les options
  With Sheets("Feuil1")
    'DLig = Range("U" & Rows.Count).End(xlUp).Rows
    DLig = 72
    Tot = 0
    For Lig = 21 To DLig
      If .Cells(Lig, Col).Value <> 0 Then
        Me.ListBox1.AddItem .Range("C" & Lig)
        Me.ListBox1.List(Me.ListBox1.ListCount - 1, 1) = Format(.Range("B" & Lig).Value, "0€")
        Tot = Tot + CDec(.Range("B" & Lig))
      End If
    Next Lig
  End With
  Me.Label1.Caption = Format(Tot, "0€")
End Sub


Private Sub ComboBox2_Change()
  Dim Col As Integer, DLig As Long, Lig As Long, Tot As Single
  ' Vider la Listbox des options et prix
  Me.ListBox2.Clear
  ' Col = 1ère colonne trouvée de la marque + choix du modèle
  Col = Application.WorksheetFunction.Match(Me.CbBMarques2, Sheets("Feuil1").Rows(1), 0)
  Col = Col + Me.ComboBox2.ListIndex
  ' Si aucun choix fait dans le modèle, on sort
  If Me.ComboBox2.ListIndex = -1 Then Exit Sub
  ' Sinon on récupère les options
  With Sheets("Feuil1")
    'DLig = .Range("I" & Rows.Count).End(xlUp).Rows
    DLig = 72
    Tot = 0
    For Lig = 21 To DLig
      If .Cells(Lig, Col).Value <> 0 Then
        Me.ListBox2.AddItem .Range("C" & Lig)
        Me.ListBox2.List(Me.ListBox2.ListCount - 1, 1) = Format(.Range("B" & Lig).Value, "0,00 €")
        Tot = Tot + CDec(.Range("B" & Lig))
      End If
    Next Lig
  End With
  Me.Label2.Caption = Format(Tot, "0,00 €")
End Sub

A+
 
Re : AIde sur code VBA

Ca marche super Bruno et en plus j'ai l'explication de comment tu as fait c'est génial 🙂

Merci à toi.

J'ai essayé aussi de créer un bouton pour tout remettre à zéro en entrant ce code mais ca ne fonctionne pas, t'aurais peut être une piste

ListBox1.Clear
ListBox2.Clear
ComboBox1.Clear
ComboBox2.Clear
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.

Discussions similaires

Réponses
32
Affichages
1 K
Réponses
12
Affichages
802
Réponses
3
Affichages
430
Réponses
3
Affichages
818
  • Question Question
Microsoft 365 Code VBA
Réponses
2
Affichages
455
C
  • Question Question
Réponses
4
Affichages
900
C
D
Réponses
4
Affichages
1 K
Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…