Bonsoir,
Je cherche s'il existe une commande vba excel pour detecter une insertion et une suppression de ligne.
L'objectif n'est pas d'interdire mais de le détecter.
Merci d'avance.
Jean-Camille
Version imprimable
Bonsoir,
Je cherche s'il existe une commande vba excel pour detecter une insertion et une suppression de ligne.
L'objectif n'est pas d'interdire mais de le détecter.
Merci d'avance.
Jean-Camille
Bonjour,
Je dirais que lorsque l'on ajoute ou que l'on supprime une ligne, la valeur du
de la feuille concernée est modifiée ;)Code:UsedRange.Rows.count
Salut jeanca73 et le forum
Pas de commande directe, mais une possibilité sur Worksheet_Change :essaies.Code:
1
2
3
4 Private Sub Worksheet_Change(ByVal Target As Range) If Target.Rows(1).Cells.Count = Columns.Count Then MsgBox "insertion/suppression de lignes" If Target.Columns(1).Cells.Count = Rows.Count Then MsgBox "insertion/suppression de colonnes" End Sub
La formule UsedRange.count ne fonctionne qu'en cas de modification du nombre de ligne de la plage d'utilisation : Une insertion de lignes avant la ligne 1 (ou après la dernière, mais c'est rare :mrgreen:) ne changera pas le nombre de lignes.
A+
Merci pour vos reponses
Ca marche top !!!
bonjour jeanca73,
le code de babaothe va peut être marcher en l'ecrivant comme cela!!! mais bon code plus long!!!
Code:
1
2
3
4
5
6
7 Private x As Long Private Sub Worksheet_Activate() x = ActiveSheet.UsedRange.Rows.Count End Sub Private Sub Worksheet_Change(ByVal Target As Range) If ActiveSheet.UsedRange.Rows.Count <> x Then MsgBox "changement" End Sub