我試圖在雙擊Visio形狀時運行宏。將參數傳遞給VBA宏
我想將形狀對象傳遞給VBA宏,以便我可以在宏中執行一些操作,具體取決於Shape對象的ID。
是否可以將參數傳遞給VBA宏。如果是,請告訴我如何?
謝謝。
我試圖在雙擊Visio形狀時運行宏。將參數傳遞給VBA宏
我想將形狀對象傳遞給VBA宏,以便我可以在宏中執行一些操作,具體取決於Shape對象的ID。
是否可以將參數傳遞給VBA宏。如果是,請告訴我如何?
謝謝。
您可以將宏作爲EventDblClick事件放置在要觀看的形狀上。爲此,您可以使用CallThis函數(http://msdn.microsoft.com/en-us/library/aa212649(office.11).aspx)在每次雙擊形狀時調用宏。
雖然這需要您修改您想要觀察的每個形狀的形狀圖。如果您要爲想要觀看的形狀提供主圖形,則不應該是一個大問題,否則,您必須編寫代碼來將該事件添加到要觀看的每個形狀(儘管您可以使用文檔上的Document_ShapeAdded事件將事件添加到形狀表(每當添加形狀時))
當您單擊一個對象時,Selection
會更改。您可以使用宏中的Selection對象來引用當前選定的對象。
我不確定宏是否可以雙擊運行,但我的VBA體驗不是來自Visio。隨着一些谷歌搜索出現,這似乎有可能。如果您將它作爲Button放置在CommandBar上,即使在上下文菜單中也需要付出更多的努力,在任何情況下,您都將被限制爲不帶參數的Sub過程。