Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
Voici ma macro le soucis c'est quand je la lance a l'ouverture du document
elle compte toutes la colone
ce que je voudrais faire c'est qu'a l'ouverture c'est que je reprends le comptage a partir du dernier depassement et non tout recommencé

l'idée c'est de memoriser le dernier depassement et quand je ré-ouvre mon dossier je reprends le comptage a la mémorisation



Ex

ligne 358 j'ai fait un depassement
quand je ré_ouvre mon fichier
je reprend a compte a partir de la ligne 385




Voila en gros
si vous pouviez me donner un coup de main merci