*.mxd aus access öffnen

hallo zusammen!

ich möchte per knopfdruck aus access direkt ein festgelegtes *.mxd öffnen, gibt es dafür eine andere möglichkeit als mit hyperlink? das funktioniert irgendwie nicht...

danke, gruß kirsten
Hallo Kirsten,

mit einer Frage zu Access bist Du in einer Access-Gruppe besser aufgehoben...

Kannst Du am besten per Shell-Execute-Api machen, z.B.:

Allgemeines Modul:
Private Declare Function ShellExecute Lib "shell32.dll" _
Alias "ShellExecuteA" (ByVal hWnd As Long, _
ByVal lOperation As String, _
ByVal lpFile As String, _
ByVal lpParameters As String, _
ByVal lpDirectory As String, _
ByVal nShowCmd As Long) As Long

Public Function fctDateiÖffnen(strFile As String)
ShellExecute 0, "open", strFile, vbNullString, vbNullString, vbNormalFocus
End Function

Aufruf an einem Ort Deiner Wahl:
fctDateiÖffnen "PfadUndDatei.mxd"

Viele Grüße
Jörg Ostendorp
Hallo Jörg,

Vielen Dank für die Hilfe.

Es hat geklappt!!!!
Hallo Gast,

auch wenn dein Problem bereits geloest ist, hier noch eine alternative Loesung mit ArcObjects (8.x):

Public Sub DokumentOeffnen()

Dim pDoc As esriCore.IDocument
Dim pMxApp As esriCore.IMxApplication
Dim pApp As IApplication

Set pDoc = New esriCore.MxDocument
Set pMxApp = pDoc.Parent
Set pApp = pMxApp
pApp.OpenDocument ("c:\temp\unbenannt.mxd")
pApp.Visible = True

End Sub

Die beiden Varianten sind vom Ergebnis her identisch. Diese hier bietet sich insbesondere an, wenn man noch weitere Dinge hinzuprogrammieren moechte, wie zum Beispiel Zu einem bestimmten Feature zoomen.

Frohes GISsen weiterhin

Uwe Lange
www.lange-is.de
Hallo Uwe,

auch die alternativ-Lösung hat geklappt - das ArcMap-Projekt lässt sich per Knopfdruck öffnen.

Nun hat besonders die Möglichkeit einer "Hinzu-Programmierung" bestimmter Dinge mein Interesse geweckt. Leider bin ich was VBA betrifft noch nicht sehr bewandert und darum jetzt noch eine Frage: Wie kann man denn "Hinzu-Programmieren" wie zum Beispiel "Zu einem bestimmten Feature zoomen" ??

Danke.
Hallo Gast,

angenommen, du möchtest aus ACCESS heraus ArcMap starten und danach:

1. ein bestimmtes Shapefile in die aktuelle Karte hinzufügen,
2. bestimmte Features selektieren und abschließend
3. auf die selektierten Layer zoomen.

Den ArcObjects-Code hierzu findest du auf der Website von ESRI unter:

1. Add a shapefile programmatically
2. Select features by attribute (Für dich dürfte der 2te Approach interessant sein.
3. Zoom to selected features

Viel Erfolg damit und
schöne Gruesse aus HH


Uwe(dot)Lange(at)DB-GIS(dot)de
Hallo Uwe,
ich bin jetzt etwas verwirrt. Welchen VBA-Code schreibe ich jetzt wohin?

VBA_vom_30_März in ein Modul in Access und die VBA_Esri in ArcMap? und VBA_vom_24_März nehme ich ganz raus?

danke und
Gruss auch aus HH
Jana und Kirsten
Hello again,

die Funktionen lassen sich alle in einem ACCESS-Modul zusammenfassen. Sozusagen:

VBA_vom_30_März
Add a shapefile programmatically
Select features by attribute
Zoom to selected features

Gruss

Uwe