Création d'un message d'alerte avant d'ouvrir un hyperlink

Bonsoir à tous,

J'ai effectué quelques recherches sur le forum et je n'ai vu nulle part mon problème évoqué. Il est le suivant :

J'ai créé un index Excel répertoriant un nombre important de documents standards, dont la plupart sont des "modèles" (Excel ou Word) -modèles de lettres par exemple- enregistrés sous le format "Microsoft Word Template" ou "Microsoft Excel Template". Ils sont tous répertoriés dans un dossier "Company documents" ; et, depuis l'index, un lien hypertexte permet d'ouvrir chacun d'entre eux.

L'avantage du format "Word Template" est que si un utilisateur ouvre le document (depuis mon dossier "Company Documents") et l'enregistre après modification, il sera (presque) contraint de l' "Enregistrer sous" et de choisir un emplacement différent du modèle. Le modèle original ne sera donc pas modifié.

CEPENDANT, si l'utilisateur accède au document depuis un lien hypertexte de mon index, qu'il l'édite et l'enregistre, le modèle original est cette fois enregistré avec les modifications sans qu'"Enregistrer sous" ne lui soit imposé.

Pour résumer, je ne comprends pas la raison de la différence de sauvegarde entre un template ouvert depuis un dossier et le même ouvert par un hyperlink depuis mon index.

L'idéal serait de trouver une réponse directe à ce problème. Mais j'ai également pensé à une autre façon de prévenir la modification des originaux par l'utilisateur : par l'apparition d'un message d'alerte, soit dans mon index au moment de cliquer sur le lien hypertexte, soit dès que le Template s'ouvre.

Qu'en pensez-vous ?

J'espère que mon explication est assez claire ; n'hésitez pas à me demander des précisions supplémentaires si besoin.

Vous remerciant par avance,

Cesaaaar

Bonjour,

Je ne connais pas le problème que tu indiques, mais pourquoi ne pas ouvrir en lecture seule à partir du lien. Il ne pourra être modifié et devra être enregistré sous un autre nom.

Cordialement.

En javascript, c'est simple ...

Ce que l'on peut faire ici, c'est une procédure événementielle sur la sélection de la zone :

  • diffuser le message
  • puis aller vers le lien

ou alors, mettre une infobulle sur la zone qui apparaîtra avant de cliquer sur le lien


A adapter ...

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Not Application.Intersect(Target, Columns("I:I")) Is Nothing Then
    If Target.Count > 1 Then
        GoTo effacer
    ElseIf Target.Value = "" Then
        GoTo effacer
    End If

            With ActiveSheet.Shapes("ZoneTexte")
                .TextFrame.Characters.Text = "bla bla bla"
                .Visible = True
                .Left = Target.Offset(0, 1).Left + 2
                .Top = Target.Offset(1, 0).Top + 2
            End With

    Exit Sub
Else
    GoTo effacer
End If
effacer:
    ActiveSheet.Shapes("ZoneTexte").Visible = False

End Sub

Mieux encore ...

https://www.excel-pratique.com/fr/vba/evenements_feuille.php

Worksheet_FollowHyperlink (au clic sur un lien) = Cet événement se déclenche lors d'un clic sur un lien hypertexte

Private Sub Worksheet_FollowHyperlink(ByVal Target As Hyperlink)
'...
End Sub

Merci beaucoup Steelson, je ne connaissais pas cette fonction !

Je me suis également rappelé que l'on pouvait afficher un message à partir de "Data" - "Data Validation" - "Input message" à chaque fois que l'on clique sur des cellules déterminées.

Merci aussi à MFerrand, mais malheureusement les documents en lecture seule sont toujours éditables depuis mes liens hypertexte.

Bonne journée à vous !

Rechercher des sujets similaires à "creation message alerte ouvrir hyperlink"