J'écris actuellement une macro qui va lire une colonne de dates, vérifier le mois de chaque élément, enregistrer le nombre dans une variable, et mettre le nombre final dans une cellule. Le programme regarde à travers une colonne de 2999 articles. La colonne n'est pas complètement pleine. Le nombre a été choisi parce que le nombre d'articles pourrait être aussi élevé.else if instruction par défaut à la dernière condition vba
La boucle pour chaque boucle vérifie le mois de chaque cellule et augmente la variable du mois de 1. Cependant, à la fin, la variable de décembre est d'environ 2500. Il n'y a qu'environ 500 lignes remplies. La somme des mois vient à 2999 (le nombre de lignes recherchées). Je ne sais pas pourquoi c'est ce qu'il fait. J'ai essayé d'ajouter une condition "else". Ce n'est même pas si loin. A15 n'est jamais rempli de "Batman". Je dois manquer quelque chose de simple. Aidez-moi?
Dim rng3 As Range
Dim JanCount As Integer
Dim FebCount As Integer
Dim MarCount As Integer
Dim AprCount As Integer
Dim MayCount As Integer
Dim JunCount As Integer
Dim JulCount As Integer
Dim AugCount As Integer
Dim SepCount As Integer
Dim OctCount As Integer
Dim NovCount As Integer
Dim DecCount As Integer
Dim dateValue As Date
Dim monthInt As Integer
Set rng3 = Sheets("Sheet2").Range("K2:K3000")
For Each cell In rng3
dateValue = cell.Value
monthInt = month(dateValue)
If monthInt = 1 Then
JanCount = JanCount + 1
ElseIf monthInt = 2 Then
FebCount = FebCount + 1
ElseIf monthInt = 3 Then
MarCount = MarCount + 1
ElseIf monthInt = 4 Then
AprCount = AprCount + 1
ElseIf monthInt = 5 Then
MayCount = MayCount + 1
ElseIf monthInt = 6 Then
JunCount = JunCount + 1
ElseIf monthInt = 7 Then
JulCount = JulCount + 1
ElseIf monthInt = 8 Then
AugCount = AugCount + 1
ElseIf monthInt = 9 Then
SepCount = SepCount + 1
ElseIf monthInt = 10 Then
OctCount = OctCount + 1
ElseIf monthInt = 11 Then
NovCount = NovCount + 1
ElseIf monthInt = 12 Then
DecCount = DecCount + 1
Else
Sheets("Sheet1").Range("A15") = "Batman"
End If
Next cell
Sheets("Sheet1").Range("A10") = "Bugs in Jan"
Sheets("Sheet1").Range("B10") = "Bugs in Feb"
Sheets("Sheet1").Range("C10") = "Bugs in Mar"
Sheets("Sheet1").Range("D10") = "Bugs in Apr"
Sheets("Sheet1").Range("E10") = "Bugs in May"
Sheets("Sheet1").Range("F10") = "Bugs in Jun"
Sheets("Sheet1").Range("G10") = "Bugs in Jul"
Sheets("Sheet1").Range("H10") = "Bugs in Aug"
Sheets("Sheet1").Range("J10") = "Bugs in Oct"
Sheets("Sheet1").Range("K10") = "Bugs in Nov"
Sheets("Sheet1").Range("L10") = "Bugs in Dec"
Sheets("Sheet1").Range("A11") = JanCount
Sheets("Sheet1").Range("B11") = FebCount
Sheets("Sheet1").Range("C11") = MarCount
Sheets("Sheet1").Range("D11") = AprCount
Sheets("Sheet1").Range("E11") = MayCount
Sheets("Sheet1").Range("F11") = JunCount
Sheets("Sheet1").Range("G11") = JulCount
Sheets("Sheet1").Range("H11") = AugCount
Sheets("Sheet1").Range("I11") = SepCount
Sheets("Sheet1").Range("J11") = OctCount
Sheets("Sheet1").Range("K11") = NovCount
Sheets("Sheet1").Range("L11") = DecCount
A15 Cell n'est pas Batman! JE SUIS BATMAN! – mattboy
Si vous postez votre contribution nous pouvons avoir plus de travailler avec @AndyArduesser –
pouvez-vous placer un 'MsgBox cell.Value' au-dessus de la ligne' dateValue = cell.Value'? exécutez le code et s'il vous plaît dites-nous ce que la boîte de message a montré –