VBA Excel - Se positionner sur date du jour

stupidophil -  
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour à tous,

Je bute sur un petit truc dans une macro excel.
Sur ma feuille, j'ai tout le planning de l'année.
Ca se présente sous cette forme:
1ère ligne, les jours de lundi à vendredi (sous la forme "ven 28 oct")
2ème ligne: planning matin
3ème ligne: planning après-midi
et tout de suite en dessous, on recommence avec la semaine suivante.

Comment faire pour qu'à l'ouverture de la feuille, on aille directement sur la ligne de la semaine en cours?

D'avance, un grand merci!


A voir également:

2 réponses

pijaku Messages postés 12263 Date d'inscription   Statut Modérateur Dernière intervention   2 761
 
Bonjour,
Clic droit sur l'onglet de la feuille concernée / Visualiser le code, dans la fenêtre visual basic ouverte, copier/coller ce code :

Private Sub Worksheet_Activate()
D = CDate(Date)
D = Int(D)
num_sem = DateSerial(Year(D + (8 - Weekday(D)) Mod 7 - 3), 1, 1)
num_sem = 3 * (((D - num_sem - 3 + (Weekday(num_sem) + 1) Mod 7)) \ 7 + 1)
Range("A" & num_sem).Select
End Sub


sources michel_m d'après Laurent Longre
0
Mike-31 Messages postés 18405 Date d'inscription   Statut Contributeur Dernière intervention   5 135
 
Salut,

Exemple colonne A tu as tes dates peu importe le format, le principal que ces dates correspondent bien à un jour, mois et année
ce code collé dans les propriétés de la feuille concernée, sélectionnera la date du jour en colonne A dès que la feuille sera activée

Private Sub Worksheet_Activate()
Dim x
x = Date
With ActiveSheet.Range("A:A")
Set c = .Find(x, LookIn:=xlValues)
If Not c Is Nothing Then
firstAddress = c.Address
End If
End With
Range(firstAddress).Select
End Sub

A+
Mike-31

Une période d'échec est un moment rêvé pour semer les graines du savoir.
0