plusieurs combobox a additionner

pouillette

XLDnaute Nouveau
Bonjour le forum,

J'ai un petit soucis avec une macro.

A partir de plusieurs combobox et textbox, je veux qu'un calcul se fasse en fonction des donnees choisies dans les combobox.

La macro s'execute bien mais la valeur qui apparait dans ma cellule est 0 a chaque fois.
Le calcul ne se fait et je ne comprend pas pourquoi...

Pouvez-vous m'aider s'il vous plait ?

Je vous joint le fichier en question.
Toutes les donnees entrees sont des valeurs numeriques.

Merci

Pouillette
 

Pièces jointes

  • Book4.xlsm
    20.2 KB · Affichages: 65
  • Book4.xlsm
    20.2 KB · Affichages: 69
  • Book4.xlsm
    20.2 KB · Affichages: 74

Pierrot93

XLDnaute Barbatruc
Re : plusieurs combobox a additionner

Bonjour,

peux pas ouvrir ton fichier, pas 2007... mais petit renseignement au passage, les données stockées dans des combo ou dans des textbox, le sont sous forme de texte... Il y a sans doute lieu d'utiliser une conversion, un exembple ci-dessous :

Code:
Range("A1").Value = CDbl(TextBox1) + CDbl(TextBox2)

bonne journée
@+
 

pouillette

XLDnaute Nouveau
Re : plusieurs combobox a additionner

Re Pierrot93,

Voici le fichier enregistre en version 97-2003, en esperant qu'il fonctionne.
Je ne pense pas que ta reponse corresponde a ce que j'attend.

Il est vrai que je n'ai pas tout explique dans mon message etant donne qu'il est plus facile de comprendre avec le fichier, mais merci quand meme.

Pouillette
 

pouillette

XLDnaute Nouveau
Re : plusieurs combobox a additionner

Re,

Oui j'ai essaye, mais ca ne change rien...

Desole pour le fichier, ma connection internet est tres lente...
 

Pièces jointes

  • Book4.zip
    15.2 KB · Affichages: 61
  • Book4.zip
    15.2 KB · Affichages: 54
  • Book4.zip
    15.2 KB · Affichages: 62

KenDev

XLDnaute Impliqué
Re : plusieurs combobox a additionner

Bonjour Pouillette, le forum,

Voilà un code testé qui a l'air de faire ce que tu veux, sous réserve d'avoir bien compris bien sûr. C'était rigolo, comme dab ;-) Attention c'est moche! Cordialement

KD

VB:
Option Explicit

Private Sub cmb_ok_Click()

Dim Nlig As Integer, i As Integer, Add As Integer, Div As Integer, Test As Integer
Dim Pl() As Single
Dim Num() As Integer
Dim Cnt As Control
Dim Idx As Byte
Dim Result
Dim vb As Boolean

    Unload UserForm1

    If Cells(8, 1) = "" Then
        Nlig = 8
    Else
        Nlig = Cells(Rows.Count, 1).End(xlUp)(2).Row
    End If
    ReDim Num(1 To 14)
    Num(1) = 11: Num(2) = 89: Num(3) = 73: Num(4) = 13: Num(5) = 11: Num(6) = 10: Num(7) = 10
    Num(8) = 30: Num(9) = 89: Num(10) = 989: Num(11) = 304: Num(12) = 76: Num(13) = 18: Num(14) = 30
    Div = 60
    Add = 480
    
    ReDim Pl(1 To 14)
    For Each Cnt In Me.Controls
        If TypeOf Cnt Is MSForms.ComboBox Then
            Idx = Val(Right(Cnt.Name, Len(Cnt.Name) - 8))
            If Idx <= 10 Then
                Test = Val(Controls("ComboBox" & Idx + 10).Value)
                Select Case Val(Cnt.Value)
                    Case 1, 2, 7, 9, 10, 12
                        If Test = 430 Then vb = True
                    Case 3 To 6, 8, 11, 13, 14
                        If Test = 600 Then vb = True
                    Case Else
                End Select
                If vb = True Then Pl(Val(Cnt.Value)) = Val(Controls("TextBox" & Idx).Value) * Val(Controls("TextBox" & Idx + 10).Value) / (Num(Cnt.Value) / Div) + 480
                vb = False
            End If
        End If
    Next Cnt

    Result = 0
    For i = 1 To 14
        Result = Result + Pl(i)
    Next i
  
    Cells(Nlig, 9) = Result
    Cells(Nlig, 9) = Format(Cells(Nlig, 9), ".")

End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 913
Messages
2 093 534
Membres
105 750
dernier inscrit
fred13340