C'est pour un suivi statistique, je dois réaliser un graphique qui comporte le nombre de mesure effectué sur chaque surface.
Avec ce code je donne des valeurs à des cases que j'utilise ensuite dans mon graphique.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
Dim nA As Integer
Dim nH As Integer
Dim nH1 As Integer
Dim nCol As Integer
Dim nP As Integer
Dim nE As Integer
Dim nINT As Integer
Dim nEX As Integer
Dim nGr As Integer
Dim nPe As Integer
Dim nCh As Integer
nH = 0
nH1 = 0
nCol = 0
nP = 0
nE = 0
nINT = 0
nEX = 0
nGr = 0
nPe = 0
nCh = 0
nA = 0
For i = 6 To 1000
If Sheets("Suivi").Range("D" & i).Value = "Alésage" Then
nA = nA + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "H" Then
nH = nH + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "H1" Then
nH1 = nH1 + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Collet" Then
nCol = nCol + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Portée de joint" Then
nP = nP + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Epaulement" Then
nE = nE + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "INT" Then
nINT = nINT + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "EXT" Then
nEX = nEX + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Face: Grande" Then
nGr = nGr + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Face: Petite" Then
nPe = nPe + 1
ElseIf Sheets("Suivi").Range("D" & i).Value = "Chemin" Then
nCh = nCh + 1
End If
Next i
Sheets("Suivi").Range("Y2").Value = nA
Sheets("Suivi").Range("Y3").Value = nCh
Sheets("Suivi").Range("Y4").Value = nCol
Sheets("Suivi").Range("AA2").Value = nE
Sheets("Suivi").Range("AA3").Value = nP
Sheets("Suivi").Range("AA4").Value = nINT
Sheets("Suivi").Range("AC2").Value = nEX
Sheets("Suivi").Range("AC3").Value = nPe
Sheets("Suivi").Range("AC4").Value = nGr
Sheets("Suivi").Range("AE2").Value = nH
Sheets("Suivi").Range("AE3").Value = nH1
End Sub
Je trouve qu'il se répète beaucoup mais je ne savais pas comment faire autrement