Suppression de lig suivant val cellule

  • Initiateur de la discussion Initiateur de la discussion Tom
  • Date de début Date de début

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 !

T

Tom

Guest
Bonjour,

Je suis en train de créer une macro et j'ai le pb suivant :
- J'importe un fichier txt
- Je le remet en forme (jusque là pas de pb)
- je souhaite que lorsque qu'excel rencontre une valeur non numérique ou nulle dans une cellule des colonnes A à D, il supprime la ligne correspondante (les cellules sont en format texte et certaines sont fusionnées) => là, je bloque....
Voilà ce que j'ai apres premiere mise en forme (qqes explemples de lignes):
1300 130 780
1300 130 B
1300 130 330
1300 130 410
1300 130 411 11.484,00
1300 130 411 937,25
1300 130 411 -766,39
Co Account Number Balance
60.000,00
Current
Dans cet exemple, je souhaiterais que les 4 premieres et 3 dernieres lignes soit supprimées....

Merci de votre aide,

Tom
 
bonjour,

Une proposition :

Code:
Public Sub vev()
Dim laligne As Integer
Dim i As Integer

laligne = Range('d65536').End(xlUp).Row
For i = laligne To 1 Step -1
If Not IsNumeric(Range('d' & i)) Or IsEmpty(Range('d' & i)) Then
Rows(i).Delete
End If
Next i
End Sub

Dans cette macro je ne teste que la colonne D ce qui à l'air de correspondre à ton exemple.

Tiens nous au courant

a plus
 
Salut,

Merci pour le code, c'est bien ce que je cherche, par contre je souhaiterai faire le test sur les 4 colonnes (A,B,C et D).J'ai essayé de créer 3 autres macros suivant cet exemple mais voilà ce que je récupère :
1300 130 418 70,5
1300 130 422 94,17
1300 130 424 368,45
1300 130 428 472,84
0,01
0,01
0,01

J' aurai souhaiteé que les 3 dernieres lignes de cet exemple soient supprimées aussi.

Merci pour votre aide
 
Re,

Je joins un fichier pour exemple : feuill1 => données Feuill2 => macros utilisées pour obtenir ce résultat.

Merci de votre aide,

Tom [file name=Exple.zip size=16126]http://www.excel-downloads.com/components/com_simpleboard/uploaded/files/Exple.zip[/file]
 

Pièces jointes

re

essaye comme ceci :

Code:
Public Sub vev()
Dim laligne As Integer
Dim i As Integer
Dim j As Integer

Application.ScreenUpdating = False
laligne = Range('d65536').End(xlUp).Row
For i = laligne To 1 Step -1
    For j = 1 To 4
        If Not IsNumeric(Cells(i, j)) Or IsEmpty(Cells(i, j)) Then
            Rows(i).Delete: Exit For
        End If
    Next j
Next i
Application.ScreenUpdating = True

End Sub

Je ne sais pas combien de ligne tu dois traiter, si tu trouve que ca rame fait le savoir....

Salut
Hervé
 
- 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
Assurez vous de marquer un message comme solution pour une meilleure transparence.
Retour