2011-01-13 81 views
1

我試圖自動化一些excel處理。使用autoit,我可以使用加載項打開多個Excel。此加載項用於更新此Excel中的數據。自動選擇excel中的子菜單

在autoit中,我設法打開帶加載項的excel文件,但現在我需要選擇menuitem來自動更新excel。我沒有任何線索在autoit3中如何做到這一點。

我找不到任何教程或手冊如何做到這一點。

回答

0

如果您知道菜單命令的擊鍵,則可以使用AutoIt Send函數。

例如,Excel中的保存功能是CTRL + s。

在AutoIt的,這將是:

Send("^s") 
+0

我用你的,因爲它很簡單。但它給了其他PC上運行的問題,因爲插件在其他PC上沒有顯示相同的行爲佈局。 – gtheys 2011-05-05 11:08:54

0

我從StackOverflow上您的其他問題,您使用的是ExcelCOM庫看看。您必須意識到,您嘗試點擊的MenuItem以與ExcelCOM庫相同的方式對底層代碼執行一些操作。

您的問題的最佳解決方案是找出MenuItem調用哪些方法,然後重現與ExcelCOM庫相同的行爲。你的意思是「自動更新Excel」我不明白,否則我會發現如何通過ExcelCOM重現你的行爲。

+0

menuitem是來自我加載的插件的菜單項。我已經解決了它擠壓按ALT +左.... +下來等。 – gtheys 2011-02-10 07:21:04

1

這聽起來像是用Excel宏代替它會更好。如果單擊「工具>宏>記錄新宏」並設置該auto_open的名稱,然後選擇要更新的單元並更新它們,然後停止記錄,則每次打開它時都會有一個宏刷新單元格。如果您需要一個單獨的文件來刷新所有文件,您可以創建一個新的電子表格並開始記錄並使用文件打開來打開(或關閉)包含在代碼中的電子表格。不要忘了也要保存這個宏。

PS-如果您需要在沒有運行宏的情況下打開文件,則需要先打開excel,然後使用「file> open」路徑打開文件時按住shift鍵。

0

如果你使用的是excel 2007(我不確定早期版本)和更高版本,你可以在隊列中使用字母組合(可能)調用你想要的每個菜單選項。當您打開excel時 - 按下並釋放Alt鍵,您將看到主菜單選項下方的字母,如圖片http://img.photobucket.com/albums/v479/vaeryn/Excel1_zps98c2f450.png然後按字母順序逐個查看您希望的菜單選項。