Code pour calcul sous exel

Résolu
Signaler
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006
-
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
-
Bonjour,

j'aurai besoin d'un code qui me fasse une multiplication entre une cellule où le chiffre exsite déjà ( le prix) et une autre cellule où cette fois ci c'est à  l'utilisateur de saisir le chiffre ( la quantité ).

Ainsi je voudrais qu'automatiquement dés que l'utilisateur rentre la quantité, le montant s'affiche dans une autre cellule.

J'espère mettre fait comprendre.
Merci à vous.
romain

41 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Bon
la protection des cellules sert à interdire la modification d'une plage de cellule.

Pour ton code, vas dans

Private Sub ThisWorkBook_Open()
    Range("C1").Select
    ActiveCell.FormulaR1C1 = "=RC[-2]*RC[-1]"
End Sub

Voilà, t'as le code !

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
14008
Date d'inscription
samedi 29 décembre 2001
Statut
Modérateur
Dernière intervention
28 août 2015
81
Salut
C'est vraiment la base de ce qu'on peut faire dans un tableur !
Regarde dans l'aide de Excel, tout y est expliqué.
Pour entrer un calcul dans une cellule, il suffit de commencer par le signe =

Vala
Jack, MVP VB
NB : Je ne répondrai pas aux messages privés

Champion du monde de boule de cristal - 2005
Le savoir est la seule matière qui s'accro
Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
7
??


Un code pour ça ? Alors que c'est la base de l'utilisation d'Excel ? Il te faut absolument du code pour faire cette opération ?


Parce que sinon :


A1 : Ton prix (déjà renseigné donc). B1: la quantité (que ton utilisateur va mettre) C1: =A1*B1 et c'est magique, ça fonctionne ! Et ça se met à jour en dynamique si dans tes options de calcul, tu as bien de coché Calcul automtique, autrement, tu rafraichis en appuyant sur F9.


 


S'il faut absolument du code ben :


range("C1").value = Range("A1").value * range("B1").value mais bon, je ne vois vraiment pas l'intérêt. Ou alors, c'est que tu n'es pas assez précis (du style, ce n'est pas dans les cellules que sont tes chiffres, mais dans des textBox d'un userform dans ce cas ... Précise précise ^^)


 


Molenn
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006

ce qui a c'est qu'il me faut en dur un code sous vb pour que lorsque l'utilisateur rentre la quantité AUTOMATIQUEMENT  le montant s'affiche.

merci


 
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Jack bat Molenn de 6 secondes.

[auteurdetail.aspx?ID=823629 CGEAL1] ce que tu ne comprends pas, c'est pour ce que tu demandes, tu as la réponse^^

Si le prix est dans B2, l'utilisateur te rentre le nombre en B3, et tu veux le résultat dans B4, bah dans B4 tu fais :

=B2*B3     [et appuie sur entrée]

Si tu veux du code, enregistre toi à faire ceci..

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006

OK mais comme ceci fait parti d'un programme et comme je ni connai rien en programmation il me faut un code pour rendre cette opération automatique, ce code  sera ensuite  inséré sous vb.

merci

désolé pour mon manque compréhension.
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Bah comme je t'ai dit (et je ne peux pas le faire pour toi, je ne connais pas tes cellules)
enregistre toi à le faire, et tu auras un code. Je peux pas dire mieux, si je peux te filer un code bidon, qui à coup sûr ne te correspondra pas :

Range("B4").Select
ActiveCell.FormulaR1C1 = "=R[-2]C*R[-1]C"

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006

je l'ai fait mais quel code il faut saisir sous vb pour rendre automatique cette opération?
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
1/ T'es en vba excel ou tu pilotes excel via vb6 ?
2/ Oùse trouvent tes celllules "le prix" & "la quantité" ?
3/ Quelle est la cellule de destination ?

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006

c'est une basic feuille de commande, donc je suis sous vb et je voudrai rendre automatique la saisi d'une opération.


le prix existe, l'utilisateur rentre sa quantité et là je voudrai que automatiquement le calcul se fasse.


 


merci désolé de vous prendre la tête
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
ARgggghhh

Mais tu dis "le prix existe", c'est bien, je suis content de le savoir, mais ça ne me dit pas ce que c'est ......

Un label, un texbox, etc.....

Sans ces éléments, on ne peut rien pour toi !
Et dans quoi saisi ton utilisateur ?
Et dans quoi le résultat doit-il apparaitre ?????

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
29
Date d'inscription
mercredi 19 juillet 2006
Statut
Membre
Dernière intervention
28 septembre 2006

J'arrête de vous prendre la tête, je vais me débrouiller autrement.


merci pour ta disponibilité et ta patience.
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Tu ne me prends pas la tête, je veux bien t'aider, c'est juste qu'il me faut un peu plus de précisions, comme le nom de tes contrôles et le type, pour te donner le code !

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
695
Date d'inscription
jeudi 5 mai 2005
Statut
Membre
Dernière intervention
5 janvier 2010
31
Salut mortalino!
Ca y est c'est de nouveau la guerre des secondes pour le plus rapide lol?

         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
Messages postés
695
Date d'inscription
jeudi 5 mai 2005
Statut
Membre
Dernière intervention
5 janvier 2010
31
Salut mortalino!
Ca y est c'est de nouveau la guerre des secondes pour le plus rapide lol?

         (Si la réponse vous convient, appuyez sur réponse acceptée...).

                           Noubliez pas de lire le REGLEMENT 
Messages postés
126
Date d'inscription
vendredi 2 décembre 2005
Statut
Membre
Dernière intervention
23 février 2007

Salut,


Sub Macro1()
For i = 1 To 1
For j = 1 To 1
Cells(i, j + 2).Value = Cells(i, j) * Cells(i, j + 1).Value
Next j
Next i
End Sub


1/Bon, il faut quand même lancer la macro
2/On suppose que les données se trouvent en A1,B1 et le résultat en C3
3/Je comprends la réaction des autres. Une formule est quand même beaucoup plus simple.
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Salut Tof,
Salut Zanus,

en fait si j'ai bien compris il n'est pas avec excel mais des contrôles sur vb6 (et encore, pas sûr à 100 %)

Est ce que c'est compliqué de dire :

Bonjour,

Je travaille avec vb6, j'ai un label (lblPrix) contenant le prix d'un objet, j'ai une textbox (tbxQuantite) pour permettre l'utilisateur de rentrer le nombre d'objets, et un autre label (lblResultat) reprenant le résultat de la multiplication entre la valeur de lblPrix et de tbxQuantite.
Comment faire pour que l'opération dans lblResultat se fasse automatiquement, dès que  les valeurs changent dans lblPrix & tbxQuantite ?

Merci

Qu'en pensez vous ?
Comme je lui ai dit, il ne me prend pas la tête, c'est juste que c'est malheureux  d'être déjà sur la 2ème page et ne pas savoir s'il est en vba ou vb6, et ne pas connaitre les contrôles utilisés !

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
797
Date d'inscription
mardi 7 juin 2005
Statut
Membre
Dernière intervention
23 février 2011
7
Quand je pense que je me suis fait griller pour 6 secondes !!!
Mais j'ai une excuse : la dernière fois, on m'a dit qu'on demandait du code et pas des formules EXCEL, alors, j'ai eu un temps de réflexion, devais-je poster ? Et puis, après un grand travail sur moi-même, j'ai décidé que oui, ça valait le coup (tout ça en 6 secondes oui, je suis très rapide ^^).

En fait, le truc qui pose pb, c'est qu'on a l'impression qu'il est en VB, mais le titre de la question est Calcul sous Excel.


 


Mais je rejoins Mortalino : exposer clairement son besoin (sans forcément tout détailler, mais un minimum de précision), c'est encore le meilleur moyen d'avoir la réponse rapidement et sans 2 pages de blabla ...
Parce qu'après la question, on ne sait toujours pas où l'utilisateur saisit sa quantité, ce qui est le minimum.

Enfin ... Un jour peut être on aura la réponse... Peut être ...

Molenn
Messages postés
7393
Date d'inscription
mercredi 23 avril 2003
Statut
Membre
Dernière intervention
6 avril 2012
58
Salut tout le monde.


De toute facon il s'en tape j ai l'impression il a du rester sur "J'arrête de vous prendre la tête, je vais me débrouiller autrement."

Bravo Mortalino tu as reussi a faire peur au Petit.






@+, Julien
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Pourtant j'ai pas une tête à faire peur

Quoi que là (pas habitué à me lever à 7h, enfin aussi tôt quoi !) j'ai la tête de qqun qui a fait la bringue cette nuit !

Je crains effectivement vu son message qu'il abandonne ce Topic. Et pourtant, vu l'heure de sa dernière connection, il a lu les messages jusqu'à Zanus. Et Dix contre Un qu'il revient se logguer aujourd'hui !
Je remplace temporairement Jack pour la boule de cristal, mais c'est pas encore au point (sinon, j'aurai su de quoi notre ami [auteurdetail.aspx?ID=823629 CGEAL1]parle)

Molenn, en fait je pense que c'est pas une mauvaise chose, moi aussi j'y ai réfléchît et je pense que suivant les situations, c'est pas plus mal d'avoir l'équivalent VBA en formule excel ! Donc tes réponses Excel sont plus que les bienvenues.

Tiens, ça me fait pensé, rendez vous sur un futur topic........

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--