Signification formules VBA
aurore
-
lermite222 Messages postés 9042 Statut Contributeur -
lermite222 Messages postés 9042 Statut Contributeur -
Bonjour,
je cherche à comprendre une macro VBA dans un fichier que je dois remettre à jour. La voici:
Sub blancheur()
Dim k As Integer, pre As Single, i As Integer, m As Integer
k = 4
pre = 0
i = 4
m = 3
Do While IsEmpty(Sheets("PLANNING SV").Cells(k, 1).Value) = False
x = (Sheets("PLANNING SV").Cells(k, 1).Value)
'instruction A
Do While IsEmpty(Sheets("BASE DONNEES_SV").Cells(m, 1).Value) = False
'1ere instruction
If Sheets("BASE DONNEES_SV").Cells(m, 1).Value = x Then
pre = pre + Sheets("BASE DONNEES_SV").Cells(m, 24).Value
End If
'2eme instruction
Do While Sheets("PLANNING SV").Cells(i, 1).Value <> x
i = i + 1
Loop
'3eme instruction
Sheets("PLANNING SV").Cells(i, 5).Value = pre
i = 4
m = m + 1
Loop
'instruction B
pre = 0
m = 3
'instruction C
k = k + 1
Loop
End Sub
quelqu'un pourrait-il m'expliquer les différentes fonctions demandées.
J'ai pu comprendre que "i" désigné les colonnes d'un de mes onglets "planning SV" et "m" désigné également les colonnes d'un autre onglet "base donnees_sv" me servant dans cette macro.
Le reste des formules est pour moi compliquer à comprendre: que signifie l'ensemble des variables du début "i=4, m=3 ..."
je vous remercie de votre aide
aurore
je cherche à comprendre une macro VBA dans un fichier que je dois remettre à jour. La voici:
Sub blancheur()
Dim k As Integer, pre As Single, i As Integer, m As Integer
k = 4
pre = 0
i = 4
m = 3
Do While IsEmpty(Sheets("PLANNING SV").Cells(k, 1).Value) = False
x = (Sheets("PLANNING SV").Cells(k, 1).Value)
'instruction A
Do While IsEmpty(Sheets("BASE DONNEES_SV").Cells(m, 1).Value) = False
'1ere instruction
If Sheets("BASE DONNEES_SV").Cells(m, 1).Value = x Then
pre = pre + Sheets("BASE DONNEES_SV").Cells(m, 24).Value
End If
'2eme instruction
Do While Sheets("PLANNING SV").Cells(i, 1).Value <> x
i = i + 1
Loop
'3eme instruction
Sheets("PLANNING SV").Cells(i, 5).Value = pre
i = 4
m = m + 1
Loop
'instruction B
pre = 0
m = 3
'instruction C
k = k + 1
Loop
End Sub
quelqu'un pourrait-il m'expliquer les différentes fonctions demandées.
J'ai pu comprendre que "i" désigné les colonnes d'un de mes onglets "planning SV" et "m" désigné également les colonnes d'un autre onglet "base donnees_sv" me servant dans cette macro.
Le reste des formules est pour moi compliquer à comprendre: que signifie l'ensemble des variables du début "i=4, m=3 ..."
je vous remercie de votre aide
aurore
A voir également:
- Signification formules VBA
- Formules - Télécharger - Études & Formations
- Livre catégorie 8 signification ✓ - Forum Loisirs / Divertissements
- Signification :p - Forum Mail
- O/ signification ✓ - Forum Hotmail / Outlook.com
- (Y) emoji signification ✓ - Forum Mail
1 réponse
Bonjour,
1°) Quand tu présente un code tu dois le formatter en code..c'est déja plus clair à lire.
2°)Soit, ta macro est bourrée d'erreur, soit il faudrait avoir les données pour la comprendre.
A+
1°) Quand tu présente un code tu dois le formatter en code..c'est déja plus clair à lire.
Sub blancheur()
Dim k As Integer, pre As Single, i As Integer, m As Integer
'Initialisation des variables
k = 4: pre = 0: i = 4: m = 3
'Tant que .. pas clair empty = Vide et False aussi.....
Do While IsEmpty(Sheets("PLANNING SV").Cells(k, 1).Value) = False
x = (Sheets("PLANNING SV").Cells(k, 1).Value)
'instruction A
'Tant que .. pas clair empty = Vide et False aussi.....
Do While IsEmpty(Sheets("BASE DONNEES_SV").Cells(m, 1).Value) = False
'1ere instruction
If Sheets("BASE DONNEES_SV").Cells(m, 1).Value = x Then
pre = pre + Sheets("BASE DONNEES_SV").Cells(m, 24).Value
End If
'2eme instruction
'Recherche la valeur de x
Do While Sheets("PLANNING SV").Cells(i, 1).Value <> x
i = i + 1
Loop
'3eme instruction
'A trouver la valeur de x et l'attribue a..???
Sheets("PLANNING SV").Cells(i, 5).Value = pre
i = 4
m = m + 1
Loop
'instruction B
pre = 0
m = 3
'instruction C
k = k + 1
Loop
End Sub
2°)Soit, ta macro est bourrée d'erreur, soit il faudrait avoir les données pour la comprendre.
A+