PDA

Vollständige Version anzeigen : Datenbank von Datenbank aus öffnen


krusty_md
07.01.2004, 15:38
Hallo,

ich möchte gerne über ein Button in meiner DB eine andere Datenbank öffnen. Wie mache ich das?

Kann mir da jemand helfen ?

Gruß basti

MRR
07.01.2004, 16:06
Hi,
und was soll dann geschehen? Willst Du nur die DB öffnen und dann soll der User ganz "normal" mit Access mit dieser DB arbeiten? Oder willst Du programmgesteuert auf irgendwelche Objekte in dieser DB zugreifen, Tabellen öffnen, bearbeiten, Abfragen ausführen oder sonst irgendwelche Dinge darin tun, um sie anschließend wieder zu schließen?

Nähere Infos erbeten...

krusty_md
07.01.2004, 16:15
Die geöffnete DB soll sich schliessen und die neue soll sich öffnen, so das ich (und jeder andere User) in ihr arbeiten kann. (mit Abfragen und allem drum und dran)
Von dieser DB will ich dann auch wieder zurück in meine "alte" DB springen können.

MRR
07.01.2004, 16:24
Ah so,
dann vielleicht mal wie folgt versuchen:

Shell """C:\Programme\Microsoft Office\Office10\msaccess.exe"" ""C:\Daten\MeineTolleZweite.mdb"" /wrkgrp ""P:\FürAlle\EineAnmeldedatei.mdw""", 1

oder kürzer, falls keine MDW-Datei benötigt wird:

"""C:\Programme\Microsoft Office\Office10\msaccess.exe"" ""C:\Daten\Plato\Plato2.mdb""", 1

HTH

krusty_md
07.01.2004, 16:32
Er gibt "Fehler beim Komilieren" aus, wenn ich das so eingebe:
(ich hab meine DB für jetzt mal Plato genannt und sie liegt in Daten)


Private Sub Befehl35_Click()
"""C:\Programme\Microsoft Office\Office10\msaccess.exe"" ""C:\Daten\Plato.mdb""", 1
End Sub

MRR
07.01.2004, 16:34
Ähemmm - sorry, da ist mir beim Kopieren das "Shell" flöten gegangen...

Private Sub Befehl35_Click()
Shell """C:\Programme\Microsoft Office\Office10\msaccess.exe"" ""C:\Daten\Plato.mdb""", 1
End Sub

krusty_md
07.01.2004, 16:37
Super, die andere öffnet sich. Dank dir.

Und wie bekomme ich es hin, das sich die andere DB gleichzeitig schließt?

MRR
07.01.2004, 16:45
Sorry:

Private Sub Befehl35_Click()
Shell """C:\Programme\Microsoft Office\Office10\msaccess.exe"" ""C:\Daten\Plato.mdb""", 1
DoCmd.Quit
End Sub

krusty_md
07.01.2004, 16:46
Habs schon.

Trotzdem vielen Dank für die Hilfe, Matthias.

Gruß Basti

Jabroni
29.01.2004, 15:33
post nach oben schieb...

hallo zusammen,

mit der shell-variante schaffe ich es die db zu öffnen.

gibt es noch eine andere möglichkeit?

habe das problem, dass ich die beiden datenbanken im netzwerk betreibe und mein laufwerk (wo die access.exe, welche durch shell angesprochen wird) nicht freigeben wird. daher kommt es bei der ausführung des shell-befehls zu einem problem :(

oder bleibt dann nur die möglichkeit, access ins netzwerk zu stellen und von dort auf die -exe zuzugreifen (finde ich pers. nicht so prickelnd)?
oder muss ich bei jedem pc, der auf die db zugreift, den shell-befehl auf den jeweiligen pfad der aktuellen access-exe des lokalen pc's ändern?

danke für die hilfe.

KHS
29.01.2004, 15:48
Entweder:
Schau mal in der Hilfe nach: FollowHyperlink-Methode
Oder:
Ich bevorzuge zum Öffnen von Dateien allerdings <b><a href="http://www.ms-office-forum.net/forum/showthread.php?s=&postid=431223" target="_blank">ShellExecute</a></b> (anklicken).
Vorteil gegenüber 'FollowHyperlink' (weil ja immer mal behauptet wird 'ShellExecute' sei obsolet):
Keine Web-Symbolleiste (die man zwar unterdrücken kann mit 'DoCmd.ShowToolbar "Web", acToolbarNo')
Eine Powerpoint-Präsentation wird auch als solche aufgerufen, nicht wie bei 'FollowHyperlink' in einem Fenster!
Siehe auch <b><a href="http://www.vbarchiv.net/vbapi/ShellExecute.php" target="_blank">HIER</a></b>

Ob sich dabei aber bei deinen Gegebenheiten auch ein Problem ergibt, kann ich nicht beurteilen.

Bernhard1
29.01.2004, 16:45
Genau so etwas habe ich auch schon gesucht.

Eine Bitte aber noch:
Die Datenbank wird bei mir (Access2000 / Win2000) minimiert in der Taskleiste abgelegt. Klicke ich dort auf das Startformular, wird es im Fenster angezeigt.

Wie kann ich dieses Formular sofort maximiert öffnen?
Hinweis: bei der aufzurufenden Datenbank handelt es sich um eine "mde", die ich nicht ändern kann!

Danke im voraus
Bernhard

KHS
30.01.2004, 10:31
@Bernhard:
Bei ShellExecute kann man ja den Fenstermodus bestimmen, siehe die Links oben.
Aber möglicherweise ist das ja im Formularcode so hinterlegt, bzw. wenn die DB über eine Verknüpfung gestartet wird, solltest du mal prüfen, ob in deren Eigenschaften im Register 'Verknüpfen' bei 'Ausführen' 'Minimiert' eingetragen ist.

Bernhard1
30.01.2004, 10:37
Tschuldigung,

der Ausdruck hat die ,1 verschluckt.

Jetzt gehts, danke