Bouton pour accéder à la date du jour

Bonjour,

Je souhaite créer un bouton qui me permettre d'accéder rapidement à la semaine en cours.

Dans mon exemple les dates sont précisées sur la ligne 1, de E1 à XX1 voire plus.

J'ai trouvé sur des forums une fonction pour accéder à une date précisée en ligne mais pas en colonne.

Merci d'avance pour votre aide.

pour info la fonction trouvée pour les lignes :

Option Explicit

Sub SelectDateJour()
'Déclaration des variables
Dim i As Integer
Dim Derlign As Integer

'Initialisation des variables
'***********************************************
Derlign = Sheets("Feuil1").Range("A" & Rows.Count).End(xlUp).Row 'n° de la dernière ligne non vide de la colonne A de la feuille 1
' "Feuil1" est à modifier suivant le nom de la feuille
'***********************************************
  For i = 31 To Derlign 'boucle de la ligne i (de 31 à la dernière ligne non vide)
      If Range("A" & i) = Date Then 'Si la cellule (A31) est = à la date du jour (Date étant l'équivalent de "AUJOURDHUI()" en VBA
          Range("A" & i).Activate 'Je me position dessus
          Exit Sub 'et je quitte la procèdure
      End If
  Next i ' si la date n'est pas trouvée en A31, la boucle continue et i prend la valeur de 32, puis 33, etc

End Sub

Bonjour,

Si vos dates sont au format date courte, vous pouvez essayer ceci :

Option Explicit

Sub SelectDateJour()

on error goto fin
with sheets("nomfeuille") 'adapter nom de la feuille !
    .cells.find(Date).activate
end with
exit sub

fin:
msgbox "date introuvable"

End Sub

Cdlt,

super merci.

et si à la place d'une date préciser j'ai un numéro de semaine , ou la date de chaque Lundi ? est-ce possible d'adapter la fonction ?

Oui, je pense que c'est possible, si le besoin est défini avec précision

Bonjour,

Voici un extrait de mon fichier.

Aussi il faut que la macro fonctionne pour chaque onglet. Dans cet exemple j'ai 2 onglets (2 collègues). En réalité j'ai 10 onglets dont le format est identique. Faut-il que je créé une macro ou chaque onglet ou y a t'il un paramètre dans la macro qui précise d'appliquer à l'onglet en cours ?

Merci d'ava

158exemple.xlsm (63.93 Ko)

nce.

David,

Je n'ai pas vu d'indication particulière sur le fichier. Ce que je propose, si j'ai bien compris, c'est de sélectionner le 1er jour de la semaine du jour en cours :

Option Explicit

Sub SelectDateJour()

Dim djour as date

djour = Date - weekday(Date, vbmonday) + 1 'lundi de semaine en cours

on error goto fin
with activesheet 'recherche sur feuille active (macro executable depuis n'importe quelle feuille)
    .cells.find(djour).activate
end with
exit sub

fin:
msgbox "date introuvable"

End Sub

Avec activesheet, la macro porte sur la feuille à partir de laquelle le code est exécuté donc pas besoin de macro supplémentaire ou de paramètres.

Cdlt,

C'est top, ça fonctionne , merci .

Est-il possible de réaliser la même chose mais avec un bouton de contrôle Active X pour pouvoir personnaliser le bouton ?

Bien sur j'ai tenté en collant la même commande mais le bouton ne répond pas.

Je ne connais pas les contrôles ActiveX, ne les utilisant jamais. Mais je dirais que c'est a priori possible en insérant le code au sein de l'évènement click

private sub commandbutton1_click()

'le code

end sub

ou en exécutant la macro au click :

private sub commandbutton1_click()

Call SelectDatejour

end sub

Mais il est également possible d'exécuter la macro à partir d'une forme (personnalisable également), à laquelle on aura affecté la macro. C'est le choix que je ferais si je bloquais.

Cdlt,

ça marche ! super.

Merci beaucoup

Rechercher des sujets similaires à "bouton acceder date jour"