ใครช่วยบอกฉันได้ว่าจะทำสิ่งนี้ให้สำเร็จได้ไหม?
ฉันต้องการให้สคริปต์ Python ทำงานบนการเปิด MXD ซึ่งจะดึงแผ่นงาน Excel ลงใน GDB และรีเฟรชแผนที่
ฉันแค่อยากให้เรื่องนี้เกิดขึ้นใน MXD ที่เฉพาะเจาะจงนี้
ใครช่วยบอกฉันได้ว่าจะทำสิ่งนี้ให้สำเร็จได้ไหม?
ฉันต้องการให้สคริปต์ Python ทำงานบนการเปิด MXD ซึ่งจะดึงแผ่นงาน Excel ลงใน GDB และรีเฟรชแผนที่
ฉันแค่อยากให้เรื่องนี้เกิดขึ้นใน MXD ที่เฉพาะเจาะจงนี้
คำตอบ:
หากคุณกำลังจะไปที่ ArcMap 10.1 คุณสามารถสร้าง python add-in ได้ Add-in ให้คุณเข้าถึงฟังก์ชั่น "เปิด" ที่จะเรียกใช้รหัสเมื่อคุณเปิด mxd
ความช่วยเหลือที่นี่อธิบายถึงวิธีการสร้างและมีตัวอย่างที่เพิ่มเลเยอร์ฐานใน mxd เมื่อเปิด
คุณสามารถโค๊ดภายใน VBA ของ mxd และโทรไปที่สคริปต์ไพ ธ อนภายใน wrapper โค้ดด้านล่าง:
Private Function MxDocument_OpenDocument() As Boolean
End Function
ใน 10.0 คุณสามารถใช้ VBA เหมือนในคำตอบของ artwork21หรือเขียนAdd-in ArcMap ที่ง่ายมากโดยใช้ ArcObjects เพื่อเรียกใช้เครื่องมือสคริปต์หรือเปลือกออกไปยังโปรแกรมเรียกใช้งาน / สคริปต์เมื่อเริ่มต้นเช่นเดียวกับในคำตอบนี้
มันอาจจะคุ้มค่าที่จะรอโปรแกรมPythonของ 10.1 หากคุณไม่ต้องการเขียนโปรแกรมเสริมของ ArcObjects