Imeys |
Le 04/10/2005 à 13:05  |
|
bonjour, pourriez vous m'aidez ou me guider pour réaliser cette exercice:
Soit 2 colonne de nombres dans une feuille de calcul, la macro demande quelle opération (+-*/), elle encode dans la troisième colonne l'opération et dans la quatrième le résultat.
Donc j'ai fait les 4 colonne ou dans les 2 premières j'ai taper une série de nombres.
Je ne vois pas comment faire pour que lorsque l'utilisateur a taper son choix d'opération que ca se mette automatique dans la 3eme colonne et ensuite faire le résultat.
Pourriez vous m'aidez svp
merci |
Tigene |
Le 04/10/2005 à 15:04  |
Viconaute Modérateur |
Salut
Je fais cela sans macro, en utilisant la fonction ci-joint
Et en recopiant cette formule dans toutes les cellules concernées de la 4e colonne.
=SI(LC(-1)="+";LC(-3)+LC(-2);SI(LC(-1)="-";LC(-3)-LC(-2);SI(LC(-1)="*";LC(-3)*LC(-2);SI(LC(-1)="/";LC(-3)/LC(-2)))))
Lorsque tu tapes, le signe de l'opération, le résultat s'affiche automatiquement.
attention au signe "/", on ne peut le rentrer qu'en mode édition.
sinon tu peux utiliser les abréviation A S M D
Tu peux inclure cette formule dans une macro, mais là je ne sais pas faire. -- Ce n'est pas parce qu'on a quelque chose à dire, qu'il faut forcément l'ouvrir |
Imeys |
Le 04/10/2005 à 15:06  |
|
merci beaucoup
je vai essayé |
Marculinos |
Le 04/10/2005 à 15:22  |
Viconaute Modérateur |
Hello,
L'opération à effectuer (addition, soustraction...) est la même pour l'ensemble des lignes de tes deux colonnes?
@+ -- The Matrix has you... Vous êtes ici ^ |
Imeys |
Le 04/10/2005 à 15:23  |
|
oui c'est la même |
Tigene |
Le 04/10/2005 à 15:50  |
Viconaute Modérateur |
ah oui, tu appliques la même opération pour toutes les lignes de la feuille de calcul
je n'avais pas compris cela.
donc tu ouvre un formulaire qui demande "quelle opération voulez-vous effectuer entre les deux nombres d'une même ligne"
Si c'est l'addition, tous les nombres sont additionnés ? -- Ce n'est pas parce qu'on a quelque chose à dire, qu'il faut forcément l'ouvrir |
Marculinos |
Le 04/10/2005 à 16:18  |
Viconaute Modérateur |
Sinon, tu peux effectuer ta manipulation en créant des boutons d'opérations.
A l'aide de la barre d'outils "Boîte à outils contrôles", créer un bouton de commande. Double-cliquer dessus afin d'atteindre Visual Basic pour Excel. Une fenêtre affiche :
Private Sub CommandButton1_Click()
End sub
Entrer le code suivant :
Private Sub CommandButton1_Click()
Cells(1, 1).Activate
l = 1
Do Until Cells(l, 1).Value = ""
Cells(l, 3).Value = Cells(l, 1).Value + Cells(l, 2).Value
l = l + 1
Loop
End Sub
Sur la gauche de l'écran, on voit une fenêtre "Project - VBA project". En dessous, une fenêtre "Propriétés - Comandbutton1". Dans cette deuxième fenêtre, il faut attribuer le texte "Addition" en face de la variable "Caption".
Retourner sous Excel.
A l'aide de la barre d'outils "Boîte à outils contrôles", créer un bouton de commande. Double-cliquer dessus afin d'atteindre Visual Basic pour Excel. Une fenêtre affiche :
Private Sub CommandButton2_Click()
End sub
Entrer le code suivant :
Private Sub CommandButton2_Click()
Cells(1, 1).Activate
l = 1
Do Until Cells(l, 1).Value = ""
Cells(l, 3).Value = Cells(l, 1).Value - Cells(l, 2).Value
l = l + 1
Loop
End Sub
Sur la gauche de l'écran, on voit une fenêtre "Project - VBA project". En dessous, une fenêtre "Propriétés - Comandbutton2". Dans cette deuxième fenêtre, il faut attribuer le texte "Soustraction" en face de la variable "Caption".
Retourner sous Excel.
A l'aide de la barre d'outils "Boîte à outils contrôles", créer un bouton de commande. Double-cliquer dessus afin d'atteindre Visual Basic pour Excel. Une fenêtre affiche :
Private Sub CommandButton3_Click()
End sub
Entrer le code suivant :
Private Sub CommandButton3_Click()
Cells(1, 1).Activate
l = 1
Do Until Cells(l, 1).Value = ""
Cells(l, 3).Value = Cells(l, 1).Value * Cells(l, 2).Value
l = l + 1
Loop
End Sub
Sur la gauche de l'écran, on voit une fenêtre "Project - VBA project". En dessous, une fenêtre "Propriétés - Comandbutton3". Dans cette deuxième fenêtre, il faut attribuer le texte "Multiplication" en face de la variable "Caption".
Retourner sous Excel.
A l'aide de la barre d'outils "Boîte à outils contrôles", créer un bouton de commande. Double-cliquer dessus afin d'atteindre Visual Basic pour Excel. Une fenêtre affiche :
Private Sub CommandButton4_Click()
End sub
Entrer le code suivant :
Private Sub CommandButton4_Click()
Cells(1, 1).Activate
l = 1
Do Until Cells(l, 1).Value = ""
Cells(l, 3).Value = Cells(l, 1).Value / Cells(l, 2).Value
l = l + 1
Loop
End Sub
Sur la gauche de l'écran, on voit une fenêtre "Project - VBA project". En dessous, une fenêtre "Propriétés - Comandbutton4". Dans cette deuxième fenêtre, il faut attribuer le texte "Division" en face de la variable "Caption".
Enregistrer le document et fermer la fenêtre Visual Basic.
A présent, tu disposes de quatre boutons pour réaliser tes opérations
L'opération concernera les colonnes 1 et 2. Le résultat s'affichera dans la colonne 3.
@+ -- The Matrix has you... Vous êtes ici ^ |
Imeys |
Le 04/10/2005 à 16:29  |
|
ok je vai essayer et j'espere que ca ira.
Mais comment on fait pour ajouter un bouton?
et je dois me placer sur la cellule résultat ou opération dans mon tableau excel?
Dsl ms je debute donc je dois apprendre |
Marculinos |
Le 04/10/2005 à 17:01  |
Viconaute Modérateur |
Pour activer la barre d'outils "Boîte à outils contrôles", tu cliques sur "Affichage" en haut de l'écran, puis tu sélectionnes "Barres d'outils" et tu cliques sur "Boîte à outils contrôles". Dans la "Boîte à outils contrôles" fais glisser ta souris sur les différentes icônes jusqu'à trouver l'icône "Bouton de commande". Après tu n'as plus qu'à le dimensionner.
Une fois que tu as rempli tes deux colonnes, tu peux cliquer sur le bouton d'opération désiré. La cellule A1 sera définie automatiquement comme cellule active avant toute opération, donc peu importe l'emplacement de ton curseur après avoir rempli tes colonnes.
Si le programme bugue, n'hésites pas à demander de l'aide, ce forum est là pour ça. Bon courage.
@+ -- The Matrix has you... Vous êtes ici ^ |
Imeys |
Le 04/10/2005 à 17:03  |
|
merci, ben c'est ce que je fais , je demande de l'aide et je vois que dans ce forum ci, on rembale pas les gens comme beaucoup le font donc je reviendrai.
Merci pour votre aide |