Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." <pat.cas@free.fr> a écrit dans le message de
news:OXH13MCgDHA.2172@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" a écrit dans le message de news:
#Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignesdont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
jevoudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
#tPif0DgDHA.2344@TK2MSFTNGP10.phx.gbl...
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." <pat.cas@free.fr> a écrit dans le message de
news:OXH13MCgDHA.2172@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" a écrit dans le message de news:
#Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignesdont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
jevoudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." <pat.cas@free.fr> a écrit dans le message de
news:OXH13MCgDHA.2172@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
Correction apportée ...
'--------------------------------
Sub SuppLigne()
Dim Trouve As Range, Trouve1 As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set Trouve = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlNext)
Set Trouve1 = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not Trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
addd = .Range("A" & Trouve.Row & ":H" & Trouve1.Row).Address
.Range("A" & Trouve.Row & ":H" & Trouve1.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing: Set Trouve1 = Nothing
End Sub
'--------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" a écrit dans le message de news:
#Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignesdont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
jevoudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
Correction apportée ...
'--------------------------------
Sub SuppLigne()
Dim Trouve As Range, Trouve1 As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set Trouve = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlNext)
Set Trouve1 = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not Trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
addd = .Range("A" & Trouve.Row & ":H" & Trouve1.Row).Address
.Range("A" & Trouve.Row & ":H" & Trouve1.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing: Set Trouve1 = Nothing
End Sub
'--------------------------------
Salutations!
"Patrice C." <pat.cas@free.fr> a écrit dans le message de
news:uOWjcGEgDHA.2172@TK2MSFTNGP09.phx.gbl...
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" <michdenis@hotmail.com> a écrit dans le message de news:
#tPif0DgDHA.2344@TK2MSFTNGP10.phx.gbl...
Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignes
dont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.
'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." <pat.cas@free.fr> a écrit dans le message de
news:OXH13MCgDHA.2172@TK2MSFTNGP09.phx.gbl...
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour Patrice,
Correction apportée ...
'--------------------------------
Sub SuppLigne()
Dim Trouve As Range, Trouve1 As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set Trouve = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlNext)
Set Trouve1 = .Find("nettoyer", .Item(1), xlValues, xlWhole,
xlRows, xlPrevious)
End With
If Not Trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
addd = .Range("A" & Trouve.Row & ":H" & Trouve1.Row).Address
.Range("A" & Trouve.Row & ":H" & Trouve1.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing: Set Trouve1 = Nothing
End Sub
'--------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:
Bonjour Denis
Merci, mais.....
Ta procédure fonctionne trop bien car elle efface tout ....
Apres mon tri, les lignes possedant 'nettoyer" sont toutes regroupées en
bas
de mon tableau
allant de bas en haut de "H1000" à "Hx" car le nombre de lignes ecrites
varie à chaque tri
Peux tu encore m'aider
--
Cordialement
Patrice CASADEI
"michdenis" a écrit dans le message de news:
#Bonjour Patrice,
La procédure soumise suppose que tu as trier ta plage de données comme
mentionné dans ta question et que tous les lignesdont la valeur en colonne H:H affiche "nettoyer" se retrouve réuni entre
H3:Hx consécutives.
A copier dans un module standard, et tu dois adapter le nom de la
feuille
dans la procédure.'-------------------------------------
Sub SuppLigne()
Dim Trouve As Range
With Worksheets("Feuil1")
With .Range("H3:H" & .Range("H65536").End(xlUp).Row)
Set trouve = .Find("nettoyer", Range("h3"), xlValues, xlWhole,
xlRows, xlPrevious)End With
If Not trouve Is Nothing Then
Application.EnableEvents = False
Application.Calculation = xlCalculationManual
.Range("A3:H" & trouve.Row).Delete (xlUp)
Application.Calculation = xlCalculationAutomatic
Application.EnableEvents = True
End If
End With
Set Trouve = Nothing
End Sub
'-------------------------------------
Salutations!
"Patrice C." a écrit dans le message de
news:Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder" ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du tableau,
jevoudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder"
ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du
tableau, je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder"
ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du
tableau, je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI
Bonjour
J'ai un tableau recapitulatif A3:H1000 contenant des formules donnant
des
resultats visibles ou non (MEFC)
Dans la colonneH en fonction de ces resultats j'ai les mots "garder"
ou
"nettoyer" qui s'affichent
Apres un tri qui me place toutes les lignes visibles en haut du
tableau, je
voudrais effacer toutes les lignes
comportant le mot "nettoyer" mais pas 1 par 1 car c'est tres long
J'ai trouvé une macro de Denis MICHON que j'ai tenté d'adapter mais ça
ne
fonctionne pas
Pourriez vous m'aider ?
Merci d'avance
Voici la macro massacrée :
Sub SuppLigne()
Application.ScreenUpdating = False
For i = Range("h1000").End(xlUp).Row To 1 Step -1
If Cells(i, 8).Value = "nettoyer" Then Cells(i, 8).ClearContents
Next
Columns("H:H").SpecialCells(xlCellTypeBlanks).EntireRow.Delete
End Sub
Cordialement
Patrice CASADEI