Python-Skript beim Öffnen von MXD ausführen?

22

Kann mir jemand sagen, wie das zu erreichen ist?

Ich möchte, dass beim Öffnen der MXD ein Python-Skript ausgeführt wird, das ein Excel-Arbeitsblatt in eine GDB zieht und die Karte aktualisiert.

Ich möchte nur, dass dies in dieser speziellen MXD geschieht.

gg7aph
quelle

Antworten:

14

Wenn Sie zu ArcMap 10.1 wechseln, können Sie ein Python-Add-In erstellen. Mit dem Add-In können Sie auf eine Funktion zugreifen, die beim Öffnen von mxd Code ausführt.

Die Hilfe hier erklärt , wie man erstellen und hat eine Probe , die eine Basisschicht zur mxd fügt beim Öffnen.

TurboGus
quelle
5

Sie können innerhalb der VBA des mxd codieren und das Python-Skript innerhalb des folgenden Code-Wrappers aufrufen:

Private Function MxDocument_OpenDocument() As Boolean

End Function
artwork21
quelle
Gute Frage. Eine mögliche Fortsetzung der Antwort von artwork21 finden Sie hier, aber ich habe es noch nicht ausprobiert - es ist ein Workaround, aber es klingt vielversprechend.
Jonatr
3

In 10.0 können Sie VBA wie in der Antwort von artwork21 verwenden oder ein sehr einfaches ArcMap- Add-In schreiben mit ArcObjects schreiben, um beim Start ein Skript-Tool oder eine Shell für beliebige ausführbare Dateien / Skripts auszuführen, wie in dieser Antwort .

Es lohnt sich wahrscheinlich, auf die Python-Add-Ins von 10.1 zu warten, wenn Sie kein spezielles ArcObjects-Add-In dafür schreiben möchten.

blah238
quelle