Exemple d’un programme qui divise une somme d’argent, Excel VBA

Ci-dessous, nous examinerons un programme dans Excel VBA qui divise une somme d’argent en billets et pièces.

Créez un événement de modification de feuille de calcul. Le code ajouté à l’événement de modification de la feuille de calcul sera exécuté par

Excel VBA lorsque vous modifiez une cellule d’une feuille de calcul.

1. Ouvrez l’éditeur Visual Basic.

2. Double-cliquez sur Feuil1 (Feuil1) dans l’Explorateur de projets.

3. Choisissez Feuille de travail dans la liste déroulante de gauche. Choisissez Modifier dans la liste déroulante de droite.

Ajoutez les lignes de code suivantes à l’événement de modification de la feuille de calcul:

4. Déclarez une variable appelée quantité de type Double et une variable i de type Integer.

Dim montant As Double, i As Integer

5. L’événement de modification de la feuille de calcul écoute toutes les modifications de la feuille Sheet1. Nous voulons uniquement qu’Excel VBA fasse quelque chose si quelque chose change dans la cellule B2. Pour ce faire, ajoutez la ligne de code suivante:

If Target.Address = "$B$2" Then

6. Nous initialisons le montant variable avec la valeur de la cellule B2.

montant = Range("B2").Value

7.On vide la plage avec les fréquences. Range (“B5: B16”).

Range("B5:B16").Value = ""

8. Il est maintenant temps de diviser le montant d’argent saisi. Nous commençons une boucle For Next.

For i = 5 To 1

9. Nous utiliserons la structure Do While Loop. Le code placé entre ces mots sera répété tant que la partie après Do While est vraie. Nous voulons qu’Excel VBA répète les lignes de code à l’étape 10 tant que le montant est supérieur ou égal à Cells (i, 1) .value.

Do While montant >= Cells(i, 1).Value

Loop

10. Ajoutez les lignes de code suivantes à la boucle Do While.

Cells(i, 2).Value = Cells(i, 2).Value + 1
montant = montant - Cells(i, 1).Value

Explication: tant que le montant est supérieur ou égal à la valeur Cells (i, 1), le montant contient des billets / pièces de cette valeur. En conséquence, Excel VBA augmente la fréquence de ce billet / pièce (première ligne) et soustrait la valeur de la facture / pièce du montant (deuxième ligne). Ce processus sera répété jusqu’à ce que la quantité devienne inférieure à la valeur Cells (i, 1). Ensuite, Excel VBA incrémente i et passe à la prochaine facture / pièce pour voir combien de fois cette facture / pièce correspond au montant restant. De cette façon, le montant d’argent sera divisé en billets et pièces jusqu’à ce qu’il ne reste plus d’argent à diviser.

11. Fermez la boucle For Next et n’oubliez pas de fermer l’instruction if (toutes deux en dehors de Do While Boucle).

  Next i
End if

12. Testez le programme.

Résultat:

Remarque: bien sûr, le montant saisi ne contient pas nécessairement chaque billet / pièce. Si le montant ne contient pas un certain billet / pièce, la partie après Do While ne devient jamais vraie pour ce billet / pièce et Excel VBA passe directement au billet / pièce suivant.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x