Vous exécutez le script Python lors de l'ouverture de MXD?

22

Quelqu'un peut-il me dire comment y parvenir?

Je veux qu'un script Python s'exécute à l'ouverture du MXD qui tirerait une feuille de calcul Excel dans un GDB et rafraîchirait la carte.

Je veux seulement que cela se produise dans ce MXD spécifique.

gg7aph
la source

Réponses:

14

Si vous allez à ArcMap 10.1, vous pouvez créer un complément python. Le complément vous donne accès à une fonction "à l'ouverture" qui exécutera le code lorsque vous ouvrez le mxd.

L'aide ici explique comment en créer un et contient un exemple qui ajoute un calque de base au mxd lors de son ouverture.

TurboGus
la source
5

Vous pouvez coder dans le VBA du mxd et appeler le script python dans l'encapsuleur de code ci-dessous:

Private Function MxDocument_OpenDocument() As Boolean

End Function
oeuvre21
la source
Bonne question. Une suite possible à la réponse de artwork21 peut être trouvée ici mais je ne l'ai pas encore essayé - c'est un peu une solution de contournement, mais cela semble prometteur.
jonatr
3

Dans la version 10.0, vous pouvez utiliser VBA comme dans la réponse de artwork21 , ou écrire un complément ArcMap très simple à l' aide d'ArcObjects pour exécuter un outil de script ou lancer des scripts / exécutables arbitraires au démarrage, comme dans cette réponse .

Il serait probablement intéressant d'attendre les compléments Python de la version 10.1 si vous ne souhaitez pas écrire un complément ArcObjects spécifiquement pour cela.

blah238
la source