PDA

Vollständige Version anzeigen : andere DB öffnen, Pfad als Variable


kaosqlco
16.01.2003, 16:28
Hallo Forum,

mit

Public Function dbOeffnen()

Dim stAppName As String

stAppName = "MSACCESS.EXE C:\Pfad\test.mdb"
Call Shell(stAppName, 1)
Application.Quit

End Function

kann ich eine andere Datenbank öffnen. Wie öffne ich aber eine andere DB, wenn ich den Pfad nur als Variable habe?

Wer hat einen Tipp?
Danke und Gruß, Jan

StehtimSchilf
16.01.2003, 16:32
stAppName = "MSACCESS.EXE " & strDeinePfadVariable ?

wie meinst Du:
wenn ich den Pfad nur als Variable habe?

z.B. so:

strDeinePfadVariable = Inputbox("Gib mal nen Pfad ein"...)
?

Gruz
SiS

kaosqlco
16.01.2003, 16:44
Hallo StehtimSchilf,

ich hatte eigentlich auch gedacht, dass das so geht.

Mit

Pfad = Left(CurrentDb.Name, Len(CurrentDb.Name) - Len(Dir(CurrentDb.Name)))
Datei = "Sicherung.mdb"
Siko_DB = Pfad & Datei

ermittle ich den Pfad meiner Datenbank. In diesem Verzeichnis steht auch die "Sicherung.mdb".

Nach

stAppName = "C:\Programme\Microsoft Office\Office\MSACCESS.EXE" & Siko_DB
Call Shell(stAppName, 1)

erhalte ich allerdings "Laufzeitfehler 53, Datei nicht gefunden".
Die "Sicherung.mdb" steht aber definitiv im gleichen Verzeichnis.
Eine testweise eingebaute "msgbox Siko_DB" liefert den kompletten Pfad (allerdings mit Tilde, da ein Verzeichnisname länger als 8 Zeichen).

Gruß Jan

StehtimSchilf
16.01.2003, 17:15
Hi...

hmmm...Tilde???

Versuchs halt mal anders:
pfad = currentproject.path

hmm!

kaosqlco
16.01.2003, 18:31
Hi,

currentproject funktioniert meines Wissens nicht in Access97.

Das Problem hat sich schon geklärt. Es lag wohl an den Leerzeichen und Bindestrichen in diversen Verzeichnisnamen. In einem Verzeichnisbaum ohne Bindestriche etc. in den Verzeichnisnamen klappt es ohne Probleme.

Danke fürs Mitdenken.

Gruß Jan

Sascha Trowitzsch
16.01.2003, 20:33
Mit

stAppName = chr(34) & "C:\Programme\Microsoft Office\Office\MSACCESS.EXE" & Chr(34) & Siko_DB

hätte es auch geklappt.

kaosqlco
16.01.2003, 21:31
Hi Sascha,

probiere ich morgen gleich nochmal aus.

Gruß Jan