簡體   English   中英

將XLS保存到XLSM

[英]Save XLS to XLSM

運行宏時,Excel不在XLS中,因此行用完了。

我想在一開始將文件另存為XLSX,然后使宏在剛剛保存的XLSX文件上運行。 它應該與XLS具有相同的名稱。

我的宏在另一個Excel工作簿中。 我鍵入“ C2”要使用的Excel工作簿的路徑,然后運行宏。

我有以下代碼另存為XLSX,但這給我一個錯誤:

aWbookIworkWith.SaveAs Filename:=myFileName, FileFormat:=xlOpenXMLWorkbook

錯誤是:

運行時錯誤“ 1004”:
無法訪問該文件。 請嘗試以下方法之一:
•確保指定的文件夾存在。
•確保包含文件的文件夾不是只讀的。
•確保文件名不包含以下任何字符:<>? []:| 要么 *
•確保文件/路徑名所包含的字符數不超過218個。**

嘗試使用與原始名稱相同的名稱,但讓FileFormat參數確定文件擴展名。

dim myFileName as string

if lcase(right(aWbookIworkWith.fullname, 4)) = ".xls" then
    myFileName = left(aWbookIworkWith.fullname, len(aWbookIworkWith.fullname)-4)
    aWbookIworkWith.SaveAs Filename:=myFileName, FileFormat:=xlOpenXMLWorkbook
else
    debug.print "not an XLS workbook"
end if

當然,包含此代碼的VBA項目不應與aWbookIworkWith放在同一工作簿中,因為XLSX不能包含VBA項目。 為此,請使用XLSM或XLSB文件格式。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM