Format pour un tri automatique (variable heure)

JEJSLY

XLDnaute Nouveau
Bonjour à tous,
Dans une macro, je cherches à faire un tri automatique sur une colonne contenant des heures: 22:00, 23:35, etc... par rapport à une variable.
Je n'arrives pas à trouver le format à appliquer à cette colonne, et à la cellule contenant la variable.
Ainsi que le type de déclaration pour cette variable.

merci de votre aide.
 

JEJSLY

XLDnaute Nouveau
Re : Format pour un tri automatique (variable heure)

Bonjour Skoobi, le forum,
J'ai mis en pièce jointe le classeur pour lequel je souhaiterais filtrer la colonne G.
Par rapport à une variable entré dans une cellule d'un autre classeur (celui qui contient ma macro).

merci d'avance.
 

Pièces jointes

  • Colporteursarchives.xls
    44.5 KB · Affichages: 98

skoobi

XLDnaute Barbatruc
Re : Format pour un tri automatique (variable heure)

Bonjour,

dans le fichier que tu m'as envoyer, le format est: lacellule.NumberFormat = h:mm:ss;@.

Applique ce format à la variable, par exemple:

lavariable = Format(cellulesource.value,"h:mm:ss;@")

A tester.
 

JEJSLY

XLDnaute Nouveau
Re : Format pour un tri automatique (variable heure)

Salut Skoobi,
Merci de ta réponse, j'ai testé, mais cela ne fonctionne pas.

Voici le début de la macro qui doit filtrer plusieurs colonnes en fonction de variables, dont la variable horaire en question.
J'ai appliqué le format comme tu me l'as indiqué, puis lors du test (F8),
la valeur de ma variable Début est bonne, mais le filtre automatique ne trouve aucune ligne avec cette valeur...
Je ne comprends pas ce qui n'est pas bon dans ma macro.

Code:
Sub Verifdoublon()
'Déclaration ================================================
Dim Cel As Range
Dim Plage_T As Range
Dim Lieu As String
Dim Colp As String
Dim Jour As Date
Dim Soirée As String
Dim Début As Date
Dim Fin As Date
'MEI =========================================================
With Workbooks("Console colporteurs.xlsm").Sheets("Archives")
    Lieu = .Range("D2")
    Colp = .Range("K2")
    Jour = .Range("C2")
    Soirée = .Range("I2")
'Début = .Range("G2")
'Fin = .Range("H2")
    Début = Format(Range("G2").Value, "h:mm:ss; @")
    Fin = Format(Range("H2").Value, "h:mm:ss; @")
End With
Workbooks("Colporteursarchives.xlsb").Activate
Sheets("Archives").Activate
Set Plage_T = Range([Q1], [A65536].End(xlUp))
'Plage de travail A/Q, 1/dernière en A ****
'effacement des couleur =========================
Plage_T.Interior.ColorIndex = xlNone
'Premier test doublons ===========================
ActiveSheet.AutoFilterMode = False
'on désactive le mode filtre auto
Plage_T.AutoFilter Field:=3, Criteria1:=Jour 'Colonne C
Plage_T.AutoFilter Field:=7, Criteria1:=Début   'Colonne G

Cordialement
 

JEJSLY

XLDnaute Nouveau
Re : Format pour un tri automatique (variable heure)

Pierrejean, Skoobi,

Merci beaucoup, cela fonctionne avec:
Code:
Criteria1:=Format(Début, "h:mm:ss;@")

Je vais pouvoir réutiliser ce codage pour d'autre format de valeurs dans d'autres cas...

à bientôt surement pour d'autre questions...

Cordialement
 

Discussions similaires

Statistiques des forums

Discussions
312 114
Messages
2 085 432
Membres
102 889
dernier inscrit
monsef JABBOUR