Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

nougitch

XLDnaute Occasionnel
Bonjour,

J'ai un message overflow sur le code suivant.
Je ne comprends pas car apres lecture des messages du forum, j'ai pourtant passe mes variables en Long et toujours rien.

Auriez-vous une idee ?

Merci par avance pour votre aide.
Cdt,


Code:
Sub MyMacro()

    Dim MaxColumn, MaxRow, MaxRow2 As Long
    Dim z, y, x As Long

    'Application.ScreenUpdating = False

    Sheets("MySheet").Cells.Delete
    
    Range("A28").CurrentRegion.Copy
    Sheets("MySheet").Range("A1").PasteSpecial xlPasteAll
    
    Sheets("MySheet").Select

    MaxColumn = Range("IV2").End(xlToLeft).Column
    For z = MaxColumn To 1 Step -1
        If (Cells(1, z) <> "Reference") And (Cells(1, z) <> "Instrument type") Then
            Columns(z).Delete Shift:=xlToLeft
        End If
    Next

    MaxRow = Range("B65536").End(xlUp).Row
    For y = MaxRow To 2 Step -1
        If (Cells(y, 2) <> "Type A") And (Cells(y, 2) <> "Type B") And (Cells(y, 2) <> "Type C") Then
            Rows(y).Delete Shift:=xlUp
        End If
    Next

    MaxRow2 = Range("B65536").End(xlUp).Row
    For x = MaxRow2 To 2 Step -1
        If (Cells(x, 4) = 0) Then
            Rows(x).Delete Shift:=xlUp
        End If
    Next

    'Application.ScreenUpdating = True

End Sub
 
Re : Overflow

Bonjour Nougitch, bonjour le forum,

Si c'est un problème de variable corrige :

Code:
Dim MaxColumn, MaxRow, MaxRow2 As Long
Dim z, y, x As Long

par :
Code:
Dim MaxColumn As long, MaxRow As Long, MaxRow2 As Long
Dim z As Long, y As Long, x As long
 
Re : Overflow

bonjour

essaye comme cela

Code:
    Dim MaxColumn As Long, MaxRow As Long, MaxRow2 As Long
    Dim z As Long, y As Long, x As Long

sinon il serait interressant de préciser sur quelle ligne il plante

oups : Bonjour robert, désolé pour la collision
 
Re : Overflow

Merci pour vos reponses.
Cela ne fonctionne otujours pas.

Le probleme intervient pour la troisieme boucle.
J'ai ajoute un Msgbox et il me trouve bien les 152 lignes que je dois avoir.

Code:
    MaxRow2 = Range("B65536").End(xlUp).Row
    MsgBox MaxRow2
    For x = MaxRow2 To 2 Step -1
        If (Cells(x, 4) = 0) Then
            Rows(x).Delete Shift:=xlUp
        End If
    Next

Ce qui est etrange, c'est que j'utilise ce fichier sur un lecteur reseau. Quand je l'utilise sur mon disque local, je n'ai pas le probleme.

Merci beaucoup pour votre aide !
Cdt,
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
5
Affichages
914
Réponses
15
Affichages
788
Réponses
4
Affichages
735
Retour