Déclencher un macro avec un lien hypertexte à formule

Anonyme
2023-09-13T13:25:02+00:00

Bonjour,

Je monte un calendrier prévisionnel pour les congés de mon service. Il est évoluable et modifiable par l'équipe.

C'est un calendrier annuel et je voudrais que que les gens puissent se rendre facilement sur le mois qu'ils souhaitent modifier. Grâce à un lien hypertexte je suis arrivé à envoyer la cellule active vers la date du mois selectionnée. Cependant celle-ci ne se met pas en haut à gauche de l'écran.

Je sais qu'il existe un macro pour le faire. Je voudrais donc qu'elle se déclenche lorsque je clique sur le lien. Cependant la fonction hyperlink.follow n'est pas déclencher par ma formule =lien_hypertexte. D'où ma question: comment faire? Je ne suis fermer à aucune suggestion même la création d'un bouton.

La formule de mon lien en cellule A5:

=LIEN_HYPERTEXTE("#"&ADRESSE(6;EQUIV(A4;6:6;0));"ALLER AU MOIS")

La macro de recentrage:

Sub TopLeft()
Application.Goto ActiveCell, Scroll:=True
End Sub

La macro de follow:

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
    If Target.Range.Address = "$A$5" Then
        Call topleft.topleft
        End If

End Sub

Merci d'avance

Microsoft 365 et Office | Excel | Pour la maison | Windows

Question verrouillée. Cette question a été migrée à partir de la Communauté Support Microsoft. Vous pouvez voter pour indiquer si elle est utile, mais vous ne pouvez pas ajouter de commentaires ou de réponses ni suivre la question.

0 commentaires Aucun commentaire

9 réponses

  1. Hecatonchire 53,870 Points de réputation Modérateur bénévole
    2023-09-13T17:56:15+00:00

    J'ai "bêtement" pensé que ton lien va dans d'autres feuilles d'où ce code mais tu restes dans la même feuille, c'est bien ça ?

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  2. Anonyme
    2023-09-13T17:42:38+00:00

    Ça ne fonctionne pas non plus...

    Je pense que le probléme viens du fait que les dates sont elle aussi générer par des formules. Cela me permet d'avoir une automatisation du calendrier en fonction de l'année renseigner avec une colorantion des week end et des jours fériés.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  3. Hecatonchire 53,870 Points de réputation Modérateur bénévole
    2023-09-13T17:30:06+00:00

    Je te propose ce code (à adapter) pour qu'il ne ce "déclenche" que pour une liste de feuille

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  4. Anonyme
    2023-09-13T17:14:47+00:00

    Non ça ne fonctionne pas mais je suis débutant en programmation donc je ne suis pas sûr d'avoir compris ce que tu me demandes de faire... désolé.

    Jusqu'à présent je suis arrivé à rendre le recentrage de la cellule active automatiquement ce qui résolvait le problème. Seul hic, ça le faisait pour toute la feuille donc si on voulait modifier une case tout le tableau se déplaçait, rendant l'opération catastrophiquement complexe.

    Donc soit je limite ce phénomène à ma ligne de date soit je le lie à l'activation du lien. Mais je n'ai pas trouvé la macro me rendant une des deux solutions possible.

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire
  5. Hecatonchire 53,870 Points de réputation Modérateur bénévole
    2023-09-13T15:06:36+00:00

    Bonjour,

    Tu pourrais tester l'activation de la feuille en utilisant

    Private Sub Workbook_SheetActivate de Thisworkbook

    ou

    Private Sub Worksheet_Activate() de la feuille

    Cette réponse a-t-elle été utile ?

    0 commentaires Aucun commentaire