Microsoft 365 Resultat de Calculs multiples dans textbox

eric72

XLDnaute Accro
Bonjour à tous,

Je rencontre un problème de calcul de differentes textbox avec le resultat dans une textbox "CoutRevient",
j'aimerais qu'à chaque saisie "CoutRevient" se mette à jour, même si une cellule reste à 0 (exemple, il y a un pot mais sans emballage , le calcul se fait quand même) mais je désespère un peu !!!
Cela concerne le Userform
Quelqu'un peut-il m'aider?
Merci beaucoup
Eric
 

Pièces jointes

  • Fiche Produit test.xlsm
    281 KB · Affichages: 12

Dranreb

XLDnaute Barbatruc
Bonjour.
Vous pourriez avoir intérêt à adopter ces procédures property :
VB:
Private Property Let Mnt(ByVal TBx As MSForms.TextBox, ByVal RHS As Variant)
   On Error Resume Next
   TBx.Text = Format(RHS, "0.00 €")
   If Err Then TBx.Text = ""
   End Property
Private Property Get Mnt(ByVal TBx As MSForms.TextBox)
   On Error Resume Next
   Mnt = CCur(TBx.Text)
   If Err Then Mnt = Empty
   End Property
Exemples d'utilisation :
Code:
Mnt(CoutRevient) = Mnt(PrixPlantePlusCher) * Mnt(TransPlante) + Mnt(PrixPlantePlusCher) + Mnt(PrixPot)
Code:
Cells(derligne, 16) = Mnt(PrixAchatPlante)
 
Dernière édition:

eric72

XLDnaute Accro
Bonjour DranReb,
Merci pour votre réponse mais je ne comprend spas du tout ou mettre ce code, de plus cela doit fonctionner pour toutes les textbox commencant par PR, pouvez-vous m'indiquer ou placer ces codes.
Merci beaucoup pour votre aide
Eric
 

eric72

XLDnaute Accro
Re Bonjour,
En fait j'ai conservé ma solution car je n'ai pas réussi avec la vôtre (oups la honte), cela fonctionne bien par contre j'ai crée un autre userform pour modifier le sproduits et là, la mise à jour des calculs ne se fait pas!!!
Merci beaucoup pour votre dévouement.
Eric
 

eric72

XLDnaute Accro
Bonjour Dranreb,
je viens de m'apercevoir que je ne vous avais pas répondu, 1000 excuses!!!
j'ai toujours un gros problème de calcul mais bon!!!
j'ai mis un post à ce sujet, je ne sais pas si je peux vous en parler ici (charte)
Bonne soirée
Cordialement
Eric
 

eric72

XLDnaute Accro
Bonjour,
Déjà je ne suis pas sur de mettre votre code au bon endroit, exemple je l'ai mis dans une combobox change

Private Sub CbTransporteur_Change()
On Error Resume Next
Me.TransPlante = Application.VLookup(CbTransporteur, Sheets("Données").Range("TbTransporteur"), 2, 0)
PRPlante = (PrixAchatPlante * TransPlante) + (PrixAchatPlante * CoeffPlante)
Mnt(CoutRevient) = (Mnt(PrixAchatPlante) * Mnt(TransPlante)) + Mnt(PrixAchatPlante) + Mnt(PrixPot) + (Mnt(PrixPlaque) / Mnt(NbPlantePlaque)) _
+ (Mnt(TxtCoutHrMO) * Mnt(TxtTempsMO)) + Mnt(PrixChromo) + Mnt(PrixEntourage) + Mnt(PrixEtiquette) + Mnt(PrixCdt) + Mnt(TxtSoie) _
+ Mnt(TxtCordelette) + Mnt(TxtEtiquetteCarton) + Mnt(Mousseline) + Mnt(Kraft) + Mnt(DsSmith) + Mnt(TxtPrixAccessoire) + (Mnt(PoidsPlante) * Mnt(PrixKgPlante))

On Error GoTo 0
End Sub
et mon "CoutRevient" ne se calcule pas!!!
J'espère être assez clair
Merci
Eric
 

Dranreb

XLDnaute Barbatruc
Ben alors moi non plus je ne peux pas savoir s'il est au bon endroit.
Là c'est effectué quand une ComboBox change. C'est bizarre dans la mesure ou d'habitude on rapatrie d'abord des données dans les TextBox avant de faire des calculs avec …
 

Discussions similaires

Réponses
15
Affichages
427