2010-07-30 64 views
1

我正在看這段代碼,我從here得到,因爲我想使用它。問題是,我用2003創建了「test.xls」文件,但是當我運行此代碼時,它將在2007年打開。有什麼辦法可以強制在特定的Excel版本中打開它,而不是默認打開?VB打開特定的Excel版本,當兩個安裝

GoSub, GuiOpen 
pweb := COM_AtlAxCreateControl(WinExist(), A_Temp . "\test.xls") 
pxlb := COM_Invoke(pweb, "Document")  ; Excel Workbook 
pxls := COM_Invoke(pxlb, "Worksheets", 1) ; Excel Worksheet 
Return 

GuiOpen: 
Gui, +Resize +LastFound 
Gui, Show, w800 h600 Center, Excel 
COM_AtlAxWinInit() 
Return 
GuiClose: 
Gui, Destroy 
COM_Invoke(pxlb, "Save") 
COM_Release(pxls) 
COM_Release(pxlb) 
COM_Release(pweb) 
COM_AtlAxWinTerm() 
ExitApp 

回答

0

這有做與該文件在Windows上相關聯的方式嘗試這種在打開的文件夾:

工具>文件夾選項>文件類型

查找xls文件並更改哪個程序打開它。如果您沒有找到它,只需添加它並相應地更改其選項。

+0

擴展名分配正確,如果我雙擊它打開的文件2003,當我雙擊xlsx文件,他們與2007年打開。這是當我試圖以編程方式打開導致問題。這不僅是打開文件,如果我想創建一個Excel.Application對象,它總是會創建一個2007,我無法在2003年打開Excel.Application對象。 – Geoff 2010-08-01 03:50:45