Frage

Ich habe ein Excel -Arbeitsblatt mit einigen Hyperlinks. Einige von ihnen sind E -Mail -Adressen.
Wenn ein Benutzer auf einen Hyperlink klickt, stelle ich fest, ob es sich um eine E -Mail handelt oder nicht. Worksheet_FollowHyperlink(ByVal Target As Hyperlink) und Target.Address like "mailto:*"

Was ich jetzt will, ist zu Stornieren Sie das Standard -Hyperlink -Verhalten und öffnen Sie den E -Mail -Kunden programmgesteuert. Auf diese Weise kann ich eine Standardnachricht bereitstellen und Anhänge hinzufügen.

Ich habe versucht zu benutzen Cancel = True Aber es funktioniert nicht. Ich ziehe es vor, nicht mit benutzerdefinierten Hyperlinks zu spielen, da Excel Links zu E -Mails automatisch generiert.

Ist es überhaupt möglich?
Das Öffnen des Hyperlinks scheint in einem anderen Thread zu passieren.

War es hilfreich?

Lösung

Du kann nicht verhindern Ein Klick aus dem Hyperlink. Sie können selbst testen, indem Sie einen Haltepunkt in der festlegen Worksheet_FollowHyperlink Sub. Excel folgen dem Link Vor Ausführung des Codes.

ich kein Ereignisverfahren sehen Das würde helfen, das Verhalten zu stören und zu verhindern.

Ein weiterer Tipp, den ich geben könnte, ist verhindern, dass Excel Hyperlinks erzeugt oder um es von VBA mit a zu tun Worksheet_Change Veranstaltung.
Als nächstes könnten Sie einen Peuso-Klick mit einem abfangen Worksheet_SelectionChange und prüfen Sie, ob die Zelle eine E -Mail -Adresse enthält.

Last but not least, wenn Sie das wissen, dass das E-Mail-Client ist Outlook, Sie können wahrscheinlich die neu erstellte E -Mail zum Hinzufügen von Anhängen, Empfängern und Nachricht erhalten ...

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top