Calculer en VBA

Bonjour à tous

J’espère que vous avez passé un bon weekend avec ce beau soleil en tout cas dans ma région.

Je viens vers vous et oui encore une fois je viens vous embêter car j’aborde une partie que je ne connais vraiment pas

J’essaie de trouver comment calculer en code VBA je sais le faire de cellule à cellule mets dans un formulaire je ne sais pas

Je m’explique, J’ai un formulaire ou je rentre une somme hors-taxe ensuite je mets le pourcentage de la TVA et à partir de la je voudrais qu’il puisse me donner automatiquement après être sorti de la textbox de tva la somme que ça fait TVA la somme en TTC et ensuite l’acompte calculée sur le TTC

Dans le classeur que je vous fournis je vous mets l’exemple que j’ai calculé dans les cellules et le bouton qui est en dessous ouvre le formulaire

en vous remerciant de votre aide.

Calcule_en_Vba_v001.xlsm (17,5 Ko)

Bonjour
A tester
Calcule_en_Vba_v001.xlsm (24,2 Ko)

Bonjour je te remercie de te pencher sur mon problème je viens de tester ce que tu me proposes cela fonctionne par contre j’ai besoin de pouvoir mettre dans la TVA avec une virgule par exemple 5,5 bien sûr le pourcentage n’est pas obligé mais il faut que je puisse mettre car la TVA n’est pas toujours arrondi s’il vous plaît

Bonjour Arnaud,

J’ai testé aussi et tu peux mettre la virgule, pas celle du pavé numérique mais celle du clavier au-dessus de la barre d’espace

Bonne journée

Re,
Autre version en tapant le point du pavé numérique
Calcule_en_Vba_v001.xlsm (24,5 Ko)

Bonjour à tous,

tout d’abord je tenais à vous remercier car la seconde proposition et la plus intéressante cela donne une plus grande liberté pour taper comme on le souhaite.

pour ma connaissance j’ai besoin de précision s’il vous plaît sur les lignes de code plus précisément sur les chiffres qui sont mis je ne suis pas quelqu’un qui est très Calais en mathématiques

si vous pouvez me détailler les lignes de code en détail pour que je puisse comprendre comment cela fonctionne

je précise que le premier code avec 0,00€ je comprends ce que ça veut dire sans problème mais c’est la suite avec 0,01 et autres

exemple le chiffre 1 et les chiffres 0.3 correspond à quoi pourquoi mettre ses chiffres comme ça

s’il vous plaît en vous remerciant.

 Private Sub TextBox1_AfterUpdate()
      Me.TextBox1.Value = Format(Me.TextBox1.Value, "0.00 €")
    End Sub

    Private Sub TextBox2_Change()
      remplace
      Me.Label39.Caption = Format((Me.TextBox1.Value * (Me.TextBox2.Value * 0.01)), "0.00 €")
      Me.Label36.Caption = Format((Me.Label39.Caption * 1) + (Me.TextBox1.Value * 1), "0.00 €")
      Me.Label19.Caption = Format((Me.Label36.Caption * 1) * 0.3, "0.00 €")
    End Sub
      
    Sub remplace()
    Me.TextBox2 = Replace(Me.TextBox2, ".", ",")
    End Sub

Re,
si ton TextBox2 = 5,5
pour ton calcul
TextBox1 * Textbox2 le tout divisé par 100
et le 0.01 correspond à 5.5/100 ou 5.5*0.01
idem pour 30% --> 0.3

ok je vois à peu près ce que tu veux dire mais la seule chose que je ne vois pas c’est comment on fait l’opération diviser dans ces lignes de code s’il te plaît

Bonjour à tous je reviens vous voir car après utiliser le code qui as besoin d’une amélioration j’ai remarqué qu’il me donne 3 chiffres après la virgule alors que 2 serait souhaitable comment peut-on limiter cela s’il vous plaît

Re,
N’étant pas devin dans tes modifications, place le classeur en PJ

Bonsoir je vous mets le classeur où j’ai mis votre proposition de code dans le nom du tableau vous sélectionner chemin d’hiver et regarder ce que ça donne au niveau de l’acompte surtout et le TTC c’est là où il y a entre trois quatre chiffres qui peuvent se mettre j’ai essayé de limiter le nombre de caractère mais ça n’a pas fonctionné donc j’ai remis à zéro pour que vous puissiez me dire ce qu’il faut que je corrige vous souhaitant une bonne soirée

Devis_Tab_v001.xlsm (101,4 Ko)

Re,
Si tu n’est pas capable de recopier (ou simplement copier/coller) une ligne de macro, laisse tomber

Ce que tu as mis:

Me.Label19.Caption = Format(Me.Label36.Caption * 1) * 0.03

Ce que j’ai mis:

Me.Label19.Caption = Format((Me.Label36.Caption * 1) * 0.3, "0.00 €")

bonsoir vous étes peut-être agacé par votre journée et tout le monde peut faire des erreurs personne n’est parfait la preuve je n’ai pas fait attention à cela je ne viendrai plus vous ennuyer cordialement

Re,
Ce n’est pas une question d’ennuyer, simplement de faire une COPIER/COLLER
pour les raccourcis touche CTRL +C pour copier - CTRL + V pour coller
Et là pas d’erreur de remplissage, au lieu de le retaper à la main :stuck_out_tongue_winking_eye:

je comprends tout à fait je ferai attention la prochaine fois cela dit nous ne sommes pas fâchés et j’aurai le plaisir peut-être dans le futur de vous embêter encore pour apprendre encore plus en vous souhaitant une bonne soirée cordialement