Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

Code VBA pour supprimer des lignes

isa44

XLDnaute Occasionnel
Bonjour ,
Je sollicite votre aide car j'ai un tableau avec des horaires en ordre croissant.
Je voudrais à l'aide d'un code VBA supprimer toutes les lignes dont les horaires sont inférieurs à 18H20 .

Ci joint un fichier

Merci d'avance pour votre aide
 

Pièces jointes

  • test1.xls
    55 KB · Affichages: 68

vgendron

XLDnaute Barbatruc
Hello

Avec ce code a placer dans un module standard
VB:
Sub sup()
Application.ScreenUpdating = False

nb = Range("Tableau1").Rows.Count
    For i = nb To 1 Step -1
        If Format(Range("Tableau1").Item(i, 1), "hh:mm") < Format("18:20", "hh:mm") Then
            Range("Tableau1").Item(i, 1).EntireRow.Delete
        End If
    Next i
Application.ScreenUpdating = True

End Sub
 

JHA

XLDnaute Barbatruc
Bonjour à tous,

Le code de Vgendron que je salue, donne le résultat escompté sur ton fichier exemple.
Tableau1 est le nom de ton tableau, peut être as tu un nom différent dans ton fichier.

JHA
 

isa44

XLDnaute Occasionnel
Bonjour ,
En fait les données sont extraite d'un programme quotidiennement et ne donne pas de nom de tableau
De ce fait même en incluant la déclaration de variable ça ne fonctionne pas.
Je suis sous Excel 2003.

" Dim nb%, i% 'déclaration des variables "

Je ne connais pas la signification de ce signe " % "

Pouvez vous m'expliquer ?
 

JHA

XLDnaute Barbatruc
Bonjour à tous,

As tu essayé de nommer ta plage de données ex: "Tableau1" =Données!$A$5:$C$163
ou pour une plage dynamique:
Code:
=DECALER(Données!$A$5;;;NB.SI(Données!$A:$A;"<>"&"");3)

sans passer par le mode tableau que tu n'as pas sous excel 2003.

JHA
 

Pièces jointes

  • test1.xls
    40.5 KB · Affichages: 55
Dernière édition:

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…