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

(vba) supprimer des lignes

5 réponses
Avatar
j-pascal
Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une tableau
dès lors qu'il y a un "x" dans la colonne A (pour les lignes concernées). A
noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt qu'avec
suppression ...


Merci d'avance pour votre aide.

JP

5 réponses

Avatar
LSteph
Bonsoir Jp,

Sub amask()
Dim i As Long
Application.ScreenUpdating = False
For i = 5 To 500
ActiveSheet.Rows(i).Hidden = InStr(Cells(i, 1), "x") > 0
Next
End Sub

'lSteph

Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une
tableau dès lors qu'il y a un "x" dans la colonne A (pour les lignes
concernées). A noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt qu'avec
suppression ...


Merci d'avance pour votre aide.

JP


Avatar
LSteph
Masquer est prudent
sinon presque idem pour suppression

ce détail à reprendre:
'...
For i = 500 To 5 step-1
if InStr(Cells(i, 1), "x") > 0 then ActiveSheet.Rows(i).delete

Bonsoir Jp,

Sub amask()
Dim i As Long
Application.ScreenUpdating = False
For i = 5 To 500
ActiveSheet.Rows(i).Hidden = InStr(Cells(i, 1), "x") > 0
Next
End Sub

'lSteph

Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une
tableau dès lors qu'il y a un "x" dans la colonne A (pour les lignes
concernées). A noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt
qu'avec suppression ...


Merci d'avance pour votre aide.

JP




Avatar
j-pascal
Bonsoir Stéphane,

Merci, c'est parfait !

Abuserais-je de ta bonté si je te demandais de me "décortiquer" : =
InStr(Cells(i, 1), "x" ?
(Tu sais que j'aime bien comprendre le code que j'utilise ;-) )

@+ ?

JP

"LSteph" a écrit dans le message de news:

Masquer est prudent
sinon presque idem pour suppression

ce détail à reprendre:
'...
For i = 500 To 5 step-1
if InStr(Cells(i, 1), "x") > 0 then ActiveSheet.Rows(i).delete

Bonsoir Jp,

Sub amask()
Dim i As Long
Application.ScreenUpdating = False
For i = 5 To 500
ActiveSheet.Rows(i).Hidden = InStr(Cells(i, 1), "x") > 0
Next
End Sub

'lSteph

Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une
tableau dès lors qu'il y a un "x" dans la colonne A (pour les lignes
concernées). A noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt qu'avec
suppression ...


Merci d'avance pour votre aide.

JP






Avatar
LSteph
Bonsoir,

instr: (in string) dans la chaine de caractères
instr(la chaine dans laquelle je cherche , la chaine que je cherche)
me renvoie le numéro du caractère à partir duquel je trouve
sinon c'est 0 (zéro)

Cordialement.

--
lSteph

Bonsoir Stéphane,

Merci, c'est parfait !

Abuserais-je de ta bonté si je te demandais de me "décortiquer" : =
InStr(Cells(i, 1), "x" ?
(Tu sais que j'aime bien comprendre le code que j'utilise ;-) )

@+ ?

JP

"LSteph" a écrit dans le message de news:

Masquer est prudent
sinon presque idem pour suppression

ce détail à reprendre:
'...
For i = 500 To 5 step-1
if InStr(Cells(i, 1), "x") > 0 then ActiveSheet.Rows(i).delete

Bonsoir Jp,

Sub amask()
Dim i As Long
Application.ScreenUpdating = False
For i = 5 To 500
ActiveSheet.Rows(i).Hidden = InStr(Cells(i, 1), "x") > 0
Next
End Sub

'lSteph

Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une
tableau dès lors qu'il y a un "x" dans la colonne A (pour les lignes
concernées). A noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt
qu'avec suppression ...


Merci d'avance pour votre aide.

JP









Avatar
j-pascal
Merci !

Bonne nuit,

JP

"LSteph" a écrit dans le message de news:

Bonsoir,

instr: (in string) dans la chaine de caractères
instr(la chaine dans laquelle je cherche , la chaine que je cherche)
me renvoie le numéro du caractère à partir duquel je trouve
sinon c'est 0 (zéro)

Cordialement.

--
lSteph

Bonsoir Stéphane,

Merci, c'est parfait !

Abuserais-je de ta bonté si je te demandais de me "décortiquer" : =
InStr(Cells(i, 1), "x" ?
(Tu sais que j'aime bien comprendre le code que j'utilise ;-) )

@+ ?

JP

"LSteph" a écrit dans le message de news:

Masquer est prudent
sinon presque idem pour suppression

ce détail à reprendre:
'...
For i = 500 To 5 step-1
if InStr(Cells(i, 1), "x") > 0 then ActiveSheet.Rows(i).delete

Bonsoir Jp,

Sub amask()
Dim i As Long
Application.ScreenUpdating = False
For i = 5 To 500
ActiveSheet.Rows(i).Hidden = InStr(Cells(i, 1), "x") > 0
Next
End Sub

'lSteph

Bonjour,

Au moyen d'une macro, je voudrais supprimer toutes les lignes d'une
tableau dès lors qu'il y a un "x" dans la colonne A (pour les lignes
concernées). A noter que le code doit s'appliquer de la ligne 5 à 100.

Je suis également preneur pour une version avec masquage plutôt
qu'avec suppression ...


Merci d'avance pour votre aide.

JP