Kleine Prozedur oder Makro gesucht!

Ich stehe an mit einer Prozedur, bzw. einem Makro in Access.
Ich habe eine Tabelle, u.a. mit folgenden Spalten:
Name, Verzeichnis
Für jeden Namen gibt es ein unterschiedliches Verzeichnis (z.B. Name "Meier, Verzeichnis „D-56-Meier“ oder Name „Huber“, Verzeichnis „E-28-Huber“).
In all diesen Verzeichnissen befindet sich je eine PowerPoint-Datei, die immer den gleichen Namen hat (z.B. „Test.pps“).
Neben jedem Namen habe ich einen Button kreiert, der die entsprechende Datei starten soll. Und hier ist das Problem:
Wie lautet die Prozedur (oder das Makro), welches die Datei im entsprechenden Verzeichnis startet?
Wie kann ich das entsprechende Unterverzeichnis in den Befehl einbinden. Erschwerend kommt dazu, dass alle Verzeichnisse in einem separaten Drive („G:“) sind, in der Tabelle dies jedoch nicht steht. Der Befehl müsste also irgendwie lauten Run G:\Verzeichniss gemäss Tabelle\Test.pps
Für eine Hilfestellung wäre ich äusserst dankbar.
Perpent

Hallo Perpent,

du verwendest du VBA Funktion Shell um andere Programm aufzurufen.

Syntax: Shell Pfad

in deinem Fall würde es so zusammengesetzt sein:

shell „G:“ & me.verzeichnis & „\test.pps“

Grüße aus Essen
Wolfgang

Syntax: Shell Pfad

in deinem Fall würde es so zusammengesetzt sein:

shell „G:“ & me.verzeichnis & „\test.pps“

Hallo Wolfgang,
nun bin ich etwas verwirrt, weil ich so nur immer eine Fehlermeldung erhielt.
Jetzt konnte ich das Problem aber (dank Deiner Hilfe!!) folgendermassen lösen:

Dim stAppName As String
Dim present As String
present = „G:“ & Me.Filename & „\test.pps“
stAppName = "pptview.exe " + present
Call Shell(stAppName, 1)

Was ich nun überhaupt nicht begreife, warum es auf diese Art läuft, und auf Deine -viel einfachere Art- einfach nicht funktioniert.
Hast Du da eine Idee?
Herzlichen Dank für Deinen Support!
Perpent

Hallo Perpent,

kleine Unterlassungssünden mach sich schnell bemerkbar. :smile:
Du hast nicht angegeben, welche Version du nutzt. Da die Unterschiede -wie du bemerkt hast- enorm sind, ist es IMMER wichtig, dass du die Programmversion mit angibst!

noch kürzer:
Call Shell(„pptview.exe G:“ & Me.Filename & „\test.pps“, 1)

Was ich nun überhaupt nicht begreife, warum es auf diese Art
läuft, und auf Deine -viel einfachere Art- einfach nicht
funktioniert.

kommt auf die Access-Version an! Welche hast du?

Hast Du da eine Idee?

jo, siehe oben :smile:

Grüße aus Essen
Wolfgang

Hallo Wolfgang,
Deine Tipps sind phantastisch (Jetzt musst Du damit rechnen, dass ich öfters an Dich gelange :smile:!)

noch kürzer:
Call Shell(„pptview.exe G:“ & Me.Filename & „\test.pps“, 1)

Das ist wirklich wesentlich kürzer und funktioniert einwandfrei! Danke.

kommt auf die Access-Version an! Welche hast du?

Ich habe Access 2003 SP2

Einen schönen Tag wünscht Dir
Perpent