Re,
En testant le code, j’étais obligé de déclarer les variables x et i en long au lieu d’integer, sinon j’avais dépassement de capacité.
Effectivement, il faut déclarer les variables de ligne en Long.
Le code s’exécute très rapidement (probablement suite à l’utilisation des tableaux = rapidité), lorsqu’il arrive à la ligne L35329, il me met le caractère "N/A" à toute les lignes suivantes.
Oui, il y a bien une limite, j'avais déjà été confronté à ce problème.
Un essai sans transpose....
Sub test()
Dim tb, ntb(), x&, i&
With Sheets("L_Juges")
.Columns("L:L").ClearContents
tb = .Range("D2:F" & .Range("D" & Rows.Count).End(xlUp).Row)
x = 0
ReDim ntb(0 To UBound(tb, 1), 1 To 1)
For i = 1 To UBound(tb, 1)
If tb(i, 3) > 0 Then
ntb(x, 1) = "Classe " & tb(i, 1) & " " & tb(i, 3) & " Oiseaux " & " " & "Juges Expert : " & tb(i, 2): x = x + 1
End If
Next i
If x > 0 Then .Range("L2").Resize(x, 1) = ntb
End With
Erase tb: Erase ntb
End Sub
Cordialement,