Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zelle via Hyperlink auf Makro

Zelle via Hyperlink auf Makro
05.04.2006 14:44:48
Daniel
Hallo liebe Forumianer,
erstmal tolles Forum!
Ich habe da ein Problem, vielleicht könnt Ihr mir auch weiterhelfen.
Ich möchte, wenn ich auf eine bestimmte Zelle klicke (z.B. C18), ein PDF-Dokument öffnen. Da dies mit einem einfachen Hyperlink in der Excel 2003 Version leider nicht mehr geht, habe ich schon nach einem Makro gesucht, dass mir die PDF Datei problemlos öffnet, siehe unten. Nun möchte ich aber auch die Funktionalität wie bei einem Hyperlink, dass wenn ich mit der linken Maustaste auf die Zelle C18 klicke sich das Makro startet. Wie kann ich das realisieren?
Vielen Dank für Eure Antworten schonmal im Voraus.
LG
Daniel
--------------
Angehängtes Makro zum Pdf-Öffnen
Option Explicit
Private Declare

Function GetShortPathName Lib "kernel32.dll" Alias "GetShortPathNameA" ( _
ByVal lpszLongPath As String, _
ByVal lpszShortPath As String, _
ByVal cchBuffer As Long) As Long
Private Declare 

Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" ( _
ByVal hwnd As Long, _
ByVal lpOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long
Private Declare 

Function GetActiveWindow Lib "user32.dll" () As Long
Private Const MAX_PATH = 260&
Private Const SW_MAXIMIZE = 3&
Public 

Sub prcOpen_PDF()
Dim strPath As String, strShortPath As String, strFile As String
strFile = "P21.pdf"
strPath = "C:\Dokumente und Einstellungen\labas\Desktop\Pläne\"
strShortPath = Space(MAX_PATH)
GetShortPathName strPath & strFile, strShortPath, MAX_PATH
strShortPath = Left$(strShortPath, InStr(1, strShortPath, vbNullChar) - 1)
ShellExecute GetActiveWindow, "open", strShortPath, vbNullString, strPath, SW_MAXIMIZE
End Sub

Anzeige

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zelle via Hyperlink auf Makro
05.04.2006 15:14:20
Peter
Servus,
z.B. so
Option Explicit
'Klassenmodul des entsprechenden Tabellenblattes
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
If Target.Address(0, 0) <> "C18" Then Exit Sub
Call prcOpen_PDF
Cancel = True
End Sub

MfG Peter
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige