ajouter un complément à une macro de Boisgontier

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

urbanito1

XLDnaute Occasionnel
bonjour au forum

pour supprimer lignes vides j'ai trouvé la macro de Boisgontier,

résultat impeccable

je voudrais y ajouter la suppression des cellules contenant un résultat de ce type : 0000:00

je joins mon fichier test

merci

urbanito1
 

Pièces jointes

Re : ajouter un complément à une macro de Boisgontier

Bonjour,
as-tu simplement testé en ajoutant ce critère à la condition ?
Code:
If Application.CountA(Rows(i)) = 0 Or Application.CountIf(Rows(i), "0000:00") > 0 Then a(i) = "sup" Else a(i) = 0
A+
 
Re : ajouter un complément à une macro de Boisgontier

david84,
merci

en testant les lignes contenant des cellules avec 0000:00 disparaissent également

peut - être n'ai je pas bien mis l'ajout du code dans la macro...j'ai essayé plusieurs possibilités ?

urbanito1

Sub supLignesRapide()
t = Timer()
Application.ScreenUpdating = False
n = [A65000].End(xlUp).Row
Dim a()
ReDim a(1 To n)
For i = 2 To n
If Application.CountA(Rows(i)) = 0 Then a(i) = "sup" Else a(i) = 0
If Application.CountA(Rows(i)) = 0 Or Application.CountIf(Rows(i), "0000:00") > 0 Then a(i) = "sup" Else a(i) = 0
Next i
Columns("b:b").Insert Shift:=xlToRight
[B1].Resize(n) = Application.Transpose(a)
[A1].CurrentRegion.Sort Key1:=Range("B2"), Order1:=xlAscending, Header:=xlYes
On Error Resume Next
Range("B2:B65000").SpecialCells(xlCellTypeConstants, 2).EntireRow.Delete
Columns("b:b").Delete Shift:=xlToLeft
If Application.CountA(Rows(i)) = 0 Or Application.CountIf(Rows(i), "0000:00") > 0 Then a(i) = "sup" Else a(i) = 0
MsgBox Timer() - t
End Sub
 

Pièces jointes

Re : ajouter un complément à une macro de Boisgontier

bonjour le forum
david84

oui effectivement
mais je pense m'être mal exprimé, désolé

il se produit une suppression de la ligne complète
ce que je souhaite c'est de laisser vides les cellules contenant "0000:00"

j'espère que c'est plus clair

merci
 
Re : ajouter un complément à une macro de Boisgontier

Bonjour,
donc tu oublies ma proposition.
Il te faut donc remplacer "0000:00" par rien.
L'enregistreur de macro te donne la syntaxe suivante (d'où l'intérêt de l'utiliser) :
Code:
Cells.Replace What:="0000:00", Replacement:="", LookAt:=xlPart, _    
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
    ReplaceFormat:=False
En plaçant cette partie en fin de procédure cela donne le résultat voulu.
Si tu veux restreindre le Replace à la plage contenant les lignes à traiter remplace le Cells par un Range("la_plage_à_traiter") car Cells.Replace traite toutes les cellules de la feuille de calcul.

A+
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Retour