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.
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 :
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 ?
Peut-on le contourner ?
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.
Code:
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 :
Code:
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 ?
Peut-on le contourner ?