Problème VB avec End(xlUp)

Bonjour à tous!

Voici une fonction appliquée à une feuille qui permet de cacher des lignes dont une certaine colonne n'a pas la bonne valeure.

Ce script marche TB.

Option Explicit

Private Sub Worksheet_Activate()
Application.ScreenUpdating = False
Dim i As Integer
With ActiveSheet
    .Rows.Hidden = False
    For i = .Cells(.Rows.Count, 2).End(xlUp).Row To 6 Step -1
        If .Cells(i, 1).Value < 1 Then .Rows(i).Hidden = True

    Next i
End With
Application.ScreenUpdating = True
End Sub

'ThisWorkbook.Sheets("Profil1").range("B6").interior.color
Private Sub Worksheet_SelectionChange(ByVal Target As Range)

End Sub

Le problème est que des que j'insère une nouvelle ligne (en faisant un clic droit et insertion sur la colonne des lignes) ce script ne marche plus et j'obtiens une erreur VB n°13 à ce niveau :

 If .Cells(i, 1).Value < 1 Then .Rows(i).Hidden = False

Idem si je vais ou couper/coller de certaines lignes

Alors que cela fonctionne avec un copier/coller.

La fonction End(xlUp) semble ne pas aimer les modifications de lignes...

D'où pourrait venir le problème ?

Le problème pourrait-il venir du format de la cellule que tu insères en colonne B ?

C'est à dire si son .value n'était pas reconnu comme un nombre ?

Tu devrais envoyer ton fichier pour qu'on voie de plus près

Bon ba finalement j'ai trouvé.

Ca ne venait pas de là mais de plus loin dans le fichier.

Merci quand même !

Rechercher des sujets similaires à "probleme end xlup"