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

Declare Anweisung

Forumthread: Declare Anweisung

Declare Anweisung
04.08.2025 11:55:49
PottervD
Hallo liebe VBA Spezialisten,
ich rufe externe Funktionen aus einer (selbst gebauten) DLL auf.
Die entsprechende Deklaration in VBA :

Public Declare Function meinfunktionsname Lib "meinlibname" (parameter as long) as long

Das funktioniert soweit ohne Probleme - solange der "meinlibname" inclusive dem vollstaendigem Pfad der DLL hier in der Deklaration als konstanter Text angegeben ist.

Nun moechte ich die DLL aber im gleichen Verzeichnis , wie die entsprechende EXCEL-Datei ablegen ( sie ist nicht 'allgemein gueltig' , sondern eben sehr speziell auf genau diese eine EXCEL-Datei zugeschnitten ). Ich weiss nicht, wo die EXCEL-Datei am Ende tatsaechlich zu liegen kommt.

Meine Versuche , ActiveWorkbook.Path 'irgendwie' in die Deklaration einzubauen, sind alle fehlgeschlagen.
Ohne Pfadangabe , also nur mit Angabe des entsprechenden DLL-Namens in der Deklaration , findet er die DLL auch nicht.
Relative Pfadangaben funktionieren da scheinbar auch nicht.

DIe Frage : kann man die Deklaration an der Stelle irgendwie 'variabel' gestalten ??

Ich bin fuer jeden Tip dankbar !



Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Declare Anweisung
04.08.2025 12:52:18
Ulf
Hi,
du kannst
1) PATH-Variable setzen mit cmd und einer adhoc-batch-Datei
2) regsvr32 oder die 64-Bitversion nutzen, siehe https://www.google.com/search?client=firefox-b-d&q=regsvr&sei=sHKQaNzZNpnlxc8P-73EkAM
Damit es ggf händisch bequem ist erstelle eine Verknüfung zu regsvr im Verzeichnis und ziehe die dll darauf, dito mit /u zum Unregister.
Beim ersten Mal ist meist Abmelden und Neuanmelden angesagt.
hth
Ulf
Anzeige
AW: Declare Anweisung
05.08.2025 11:24:17
pottervd
Es ist zwar nicht das, was ich mir gewünscht habe, aber es geht wohl nicht eleganter.
Vielen Dank
AW: Declare Anweisung
04.08.2025 16:28:08
Volti
Hallo,
Ein Tipp:
Anstelle der festen Deklaration die DLL mit LoadLibrary zur Laufzeit einbinden.
Habe ich ewig nicht gemacht und jetzt auch gerade keine Zeit mehr.

Aber vielleicht hilft es ja.

Gruß Karl-Heinz
Anzeige
Anzeige
Anzeige