Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Erreur d'exécution 6 Dépassement de capacité [Jacky]

2 réponses
Avatar
TroXsA
Bonjour a tous

J'ai une erreur a la ligne
For i = derlg To 1 Step -1

Erreur d'exécution 6 Dépassement de capacité
j'ai bien essayer de mettre la variable derlg en type long et ça ne
fonctionne toujours pas !!
pour faire une petite précision j'ai 60797 lignes :p


Voila la fonction de Jacky ...
________________________________
Sub jj()
derlg = Range("b65536").End(3).Row
For i = derlg To 1 Step -1
If Left(UCase(Range("b" & i)), 4) <> "SCVT" Then Range("b" &
i).EntireRow.Delete
Next
End Sub
_________________________________

Merci de votre aide

2 réponses

Avatar
Clément Marcotte
Bonjour,
On dirait bien que tu es victime des conversions implicites de VBA. Le
problème, c'est le compteur (i). VBA a converti to i en type Integer (-32767
à 32767) parce que cela lui semblait le type le plus approprié. Quand VBA
réalise que que ta dernière ligne dépasse 32767, il n'est pas capable de
corriger son i. Ajoute Dim i as long dans tes déclarations de variables.


"TroXsA" a écrit dans le message de news:
ebesk6$dhr$
Bonjour a tous

J'ai une erreur a la ligne
For i = derlg To 1 Step -1

Erreur d'exécution 6 Dépassement de capacité
j'ai bien essayer de mettre la variable derlg en type long et ça ne
fonctionne toujours pas !!
pour faire une petite précision j'ai 60797 lignes :p


Voila la fonction de Jacky ...
________________________________
Sub jj()
derlg = Range("b65536").End(3).Row
For i = derlg To 1 Step -1
If Left(UCase(Range("b" & i)), 4) <> "SCVT" Then Range("b" &
i).EntireRow.Delete
Next
End Sub
_________________________________

Merci de votre aide



Avatar
TroXsA
Nikel ! merci


"Clément Marcotte" a écrit dans le message
de news:
Bonjour,
On dirait bien que tu es victime des conversions implicites de VBA. Le
problème, c'est le compteur (i). VBA a converti to i en type Integer
(-32767 à 32767) parce que cela lui semblait le type le plus approprié.
Quand VBA réalise que que ta dernière ligne dépasse 32767, il n'est pas
capable de corriger son i. Ajoute Dim i as long dans tes déclarations de
variables.


"TroXsA" a écrit dans le message de news:
ebesk6$dhr$
Bonjour a tous

J'ai une erreur a la ligne
For i = derlg To 1 Step -1

Erreur d'exécution 6 Dépassement de capacité
j'ai bien essayer de mettre la variable derlg en type long et ça ne
fonctionne toujours pas !!
pour faire une petite précision j'ai 60797 lignes :p


Voila la fonction de Jacky ...
________________________________
Sub jj()
derlg = Range("b65536").End(3).Row
For i = derlg To 1 Step -1
If Left(UCase(Range("b" & i)), 4) <> "SCVT" Then Range("b" &
i).EntireRow.Delete
Next
End Sub
_________________________________

Merci de votre aide