stitchbouck
Messages postés113Date d'inscriptionmercredi 12 janvier 2011StatutMembreDernière intervention15 mai 2023
-
16 déc. 2017 à 13:03
stitchbouck
Messages postés113Date d'inscriptionmercredi 12 janvier 2011StatutMembreDernière intervention15 mai 2023
-
16 déc. 2017 à 13:47
Bonjour,
voilà, j'ai des yeux carrés, je ne vois plus bien ce que j'ai fais de faux. Je suis un débutant en VBA, et pas gd monde autour de moi pour m'aider. Donc hop, un petit saut chez vous :)
If Sheets("Ordre de relevé").Cells(numero - 1, 41).Value - Sheets("Ordre de relevé").Cells(numero, 41).Value < 0 _
Then Sheets("Conso antioxydant").Cells(54, 2).Value = Sheets("Ordre de relevé").Cells(numero - 1, 41).Value + (950 - Sheets("Ordre de relevé").Cells(numero, 41).Value) _
End If
En français :
si mon relevé de la veille, moins celui du jour est négatif, alors la valeur de la cellule qui doit accueillir le résultat = relevé de la veille +(950 (capacité max) - relevé du jour).
Voilà l'idée du calcul. et VBA me met un message pour ce code en pointant le END IF "attendu fin d'instruction". et là bein... j'ai lu, relu, allez sur le net pour comparer mon bloc If, tenté avec des Else, des Else if etc... je coince, je ne comprends pas ce qui ne lui va pas.
Peut-on m'aider ?
je continue de chercher ds mon coin en attendant, je re si je trouve ce qui ne va pas.
HA et "numero" est déclaré en tout début de code (mais il est long). je suis preneur pour un raccourcit de syntaxe, si vous en connaissez un ;)
merci d'avance !!
A voir également:
Erreur dans un bloc If... pourquoi ça ne fonctionne pas...
NHenry
Messages postés15069Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention29 mai 2023158 16 déc. 2017 à 13:10
Soit tu fais une seule ligne :
If Sheets("Ordre de relevé").Cells(numero - 1, 41).Value - Sheets("Ordre de relevé").Cells(numero, 41).Value < 0 Then Sheets("Conso antioxydant").Cells(54, 2).Value = Sheets("Ordre de relevé").Cells(numero - 1, 41).Value + (950 - Sheets("Ordre de relevé").Cells(numero, 41).Value)
Sans le End if soit tu le fait en plusieurs lignes :
If Sheets("Ordre de relevé").Cells(numero - 1, 41).Value - Sheets("Ordre de relevé").Cells(numero, 41).Value < 0 Then
Sheets("Conso antioxydant").Cells(54, 2).Value = Sheets("Ordre de relevé").Cells(numero - 1, 41).Value + (950 - Sheets("Ordre de relevé").Cells(numero, 41).Value)
End If
Mais pas un hybride des 2.
stitchbouck
Messages postés113Date d'inscriptionmercredi 12 janvier 2011StatutMembreDernière intervention15 mai 2023 16 déc. 2017 à 13:47
haaa je n'avais pas compris que le End If n'était pas obligatoire !!! d'où le blocage. Bon, super merci encore !! :)
16 déc. 2017 à 13:47