{VBA Excel}probleme de programmation
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| Sub compter()
Dim totlig As Long, poid As Double, i As Long
With Sheets("Saisie") ' Travaille sur la feuille Saisie
totlig = .Range("Q65536").End(xlUp).Row ' Recupere le nombre de ligne
poid = 0# ' Initialise le poid calculé
For i = 5 To totlig ' Demarre la boucle à la igne 5, la 1,2,3,4 sont des titres
If IsNumeric(Range("Q" & i).Value) Then
poid = poid + (.Range("Q" & i).Value / 1000) ' additione la valeur poids ramenée en tonnes
End If
If poid >= 3000 Then ' test avec la prochaine valeur si ca depasse les 3000 tonnes
MsgBox ("Depassement :" & poid & " Kg" & vbCr & "A la ligne " & i)
.Range("Q" & i).Interior.ColorIndex = 3 ' je colorie en rouge la cellule
poid = 0# ' remise à zero des calculs
Else
.Range("Q" & i).Interior.ColorIndex = xlNone ' sinon j'enleve la couleur
End If
Next i
End With
End Sub |
voila le code ci-dessus
je voudrais rajouter 2 conditions
la premiere conditions
c'est quand je rentre un nombre dans la colonne Q je lance la macro compte
et la deuxieme condition
c'est si je depasse mon tonnage au lieu de faire apparaitre une msgbox
je recopie le message dans un dossier word
voila tout de coup sera la bienvenue