Faire des calculs complexes avec Excel VBA

Le kème terme, Tk, d’une certaine série mathématique est défini par la formule suivante:

TK= K2+6K+1
9K+7

 

Le premier terme, T1, de la série est obtenu en substituant k = 1 dans la formule i.e.

T1 12+6+1 = 1 Et
9+7 2

 

T2 22+12+1 = 17 Et ainsi de suit
18+7 25

Ci-dessous, nous examinerons un programme dans Excel VBA qui calcule tout terme Tk et la somme des termes jusqu’à N.

Explication: l’utilisateur a la possibilité de saisir “Tout” ou “Impaire”, pour calculer respectivement la somme des premiers N termes de la série ou la somme des seuls termes impairs jusqu’à N.

Placez un bouton de commande sur votre feuille de calcul et ajoutez les lignes de code suivantes:

1.Premièrement, nous déclarons quatre variables de type Integer et une variable de type String.

Dim i, term, N, stepSize As Integer
Dim sumType As String

2. Deuxièmement, nous initialisons les variables.

i = 0

N = Range("C2").Value

sumType = Range("C3").Value

Videz les champs

Range("A8:B1000").Value = ""

Range("C6").Value = ""

Déterminez stepSize.

Select Case sumType

    Case Is = "Tout"

        stepSize = 1

    Case Is = "Ancien"

        stepSize = 2

    Case Else

        MsgBox "Enter a valid expression in cell C3"

        End

End Select

Conseil: parcourez notre programme Select Case pour en savoir plus sur la structure Select Case.

3. Faites les calculs.

For term = 1 To N Step stepSize

    Cells(8 + i, 1).Value = term

    Cells(8 + i, 2).Value = (term ^ 2 + (6 * term) + 1) / ((9 * term) + 7)

    Range("C6").Value = Range("C6").Value + Cells(8 + i, 2).Value

    i = i + 1

Next term

 

Explication: nous utilisons le mot clé Step pour spécifier l’incrément (1 pour “Tout” et 2 pour “Ancien”) pour la variable de compteur de la boucle.

Résultat:

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
()
x