Résultat calcul selon l'option coché

Salut a tous,

je rencontre un casse tête depuis plusieurs heures sans avoir trouver la réponse.

Je souhaiterais multiplier "poids total" par "air express" ou "air cargo" ou "bateau cargo" (selon l'option coché) + "prix total" * "droit de douane" * "TVA"

Avez vous une idée?

Est-ce possible ?

Merci

Cordialement

17calcul.xlsm (17.46 Ko)

Bonjour Piouf, bonjour le forum,

Peut-être comme ça :

Le code :

Private COL As Byte

Sub Casdoption1_Cliquer()
COL = 5
Call Suite
End Sub

Sub Casdoption3_Cliquer()
COL = 6
Call Suite
End Sub

Sub Casdoption4_Cliquer()
COL = 7
Call Suite
End Sub

Sub Suite()
Dim O As Worksheet
Set O = Worksheets("Feuil1")
O.Range("H2").Value = O.Range("A2") * O.Cells(2, COL)
End Sub

Le fichier :

7piouf-ep-v01.xlsm (18.29 Ko)

Merci super ThauThème

Je maîtrise pas le VBA et j'aimerais savoir si je peux utiliser le calcul actuel ci-dessous dans le VBA avec votre calcul ?

=SI('3 Product Research'!$C1="";"-";(A2*E2+B2))*(1+C2)*(1+D2)

Cette ligne =SI('3 Product Research'!$C1="";"-"; c'est pour mettre un tiret temps que la cellule C2 est vide

11copy-of-calcul.xlsm (17.74 Ko)

Bonjour,

Une solution à tester.

J'ai ajouté le fichier modifié donc à recharger.

Bonjour,

Une proposition à tester.

Cordialement.

10calcul.xlsm (16.63 Ko)

Bonjour toutes et tous

Coucous à tous

pas trop compris la seconde ^question

mais en tout cas les posts ci-dessus fonctionne parfaitement -;)

@ tester à placer dans l'onglet du classeur (Worksheet) en question, s'il s'agit bien de mettre en cellule C1 cette formule

Range("C1").Formula = "=SI('3 Product Research'!$C1="";"-";(A2*E2+B2))*(1+C2)*(1+D2)"
Private Sub Worksheet_Change(ByVal Target As Range)
.Range("C1").Formula = "=SI('3 Product Research'!$C1="";" - ";(A2*E2+B2))*(1+C2)*(1+D2)"
'=SI('3 Product Research'!$C1="";"-";(A2*E2+B2))*(1+C2)*(1+D2)
End Sub

crdlt,

André

Merci a tous de vos aides

Hélas tous les calculs sont pas les mêmes que ma formule de calcule..

Merci a tous de vos aides

Hélas tous les calculs sont pas les mêmes que ma formule de calcule..

Re,

avec un exemple du résultat final de ce que tu souhaites se serai plus parlant

Re,

Regarde le fichier modifié ci-joint

11calcul.xlsm (17.76 Ko)

re,

je pense plutôt à =((INDEX(E2:G2;I2)*A2)+(B2*C2))*(1+D2)

Cordialement

Salut le fil

Dans ton module tu colles ça, et tu affectes à chaque case à cocher sa macro correspondante.

Sub Casdoption2_Cliquer()
[H2] = ([A2] * [E2]) + ([B2] * [C2] * [D2])

End Sub
Sub Casdoption3_Cliquer()
[H2] = ([A2] * [F2]) + ([B2] * [C2] * [D2])

End Sub

Sub Casdoption4_Cliquer()
[H2] = ([A2] * [G2]) + ([B2] * [C2] * [D2])

End Sub

Re,

Ou alors sans VBA

Dans [Format du contrôle] [Contrôle] [Cellule liée] tu sélectionnes par exemple $I$1, et dans H2 tu mets

=(A2*DECALER(D2;;I1))+(B2*C2*D2)

Merci a vous,

Jean paul, cette formule (A2*DECALER(D2;;I1) multiplie A2 l'option choisi (E2, F2, G2) ?

Salut a tous

J'ai finalement utiliser ce code vba

Private Sub CommandButton1_Click()
[Q3] = ([I3] * [N3])
End Sub

Savez vous comment faire pour que cette macro affiche aussi les résultats dans les cellules dessous c'est a dire:

[Q4] = ([I4] * [N4])

[Q5] = ([I5] * [N5])

[Q6] = ([I6] * [N6])

[Q120] = ([I120] * [N120])

Encore merci pour votre aide

Bonjour toutes et tous

@ tester sur la feuil1

Option Explicit
Private Sub CommandButton1_Click()
On Error Resume Next
  With Range("q3:q" & Range("I" & Rows.Count).End(xlUp).Row)
    .Formula = "=(I3) * (N3)"
    .Value = .Value
  End With
End Sub

crdlt,

André

Salut le fil

Tu n'as pas bien lu mon post il faut que tu lie tes CheckBox à la cellule "I1" par exemple et ensuite tu colles la formule dans la cellule H2.

Tu as une propriété dans les checkBox qui te permet d'avoir la valeur cochée.

Et pour te répondre oui cela fait le calcul demandé. As tu tester le fichier joint....

Et quand tu dis :

[quote]Private Sub CommandButton1_Click()

[Q3] = ([I3] * [N3])

End Sub[/quote]

Ce n'est pas ce que tu demande dans ton premier post.

(Poids total * "Air expres => Bateau cargo") + (Prix total * droit de douane * TVA)

( A1 * E1 => G1 ) + (B2 * C2 * D2)

Pour que la formule se répète sur les autres lignes sélectionne ton tableau complet et fait [menu] [Insertion] et là tu insères un tableau en cochant mon tableau comporte des entêtes. Voilà c'est fini

Merci Andre13, il y a un petit problème car cela fonctionne pas avec toutes les cellules..

Merci Jean-Paul, je comprends mieux.. c'est obligé d'afficher le résultat dans la cellule "I1" ? on peut la supprimer ou la caché ?

Salut piouf13, le fil

Oui tu peux cacher ou le mettre sur une autre feuille qui est cachée, faudra juste pointer sur la bonne cellule en nommant la feuille.

Je me sers souvent de feuille pour enregistrer mes paramètres.

Merci Jean Paul, c'est top

Il y a un truc que je pige pas, après avoir coller =(A2*DECALER(D2;;Feuil2!A1))+(B2*C2*D2) sur la cellule H2, est-qu'il faut faire une manipulation sur la cellule A2 de la feuil1 pour qu'il affiche les nombres (1,2,3) selon l'option choisi ?

oui tu dois de nouveau changer la cellule liée dans les propriétés de tes CheckBox, sur une seulement...

Rechercher des sujets similaires à "resultat calcul option coche"