【问题标题】:How to open up a new Excel Workbook in MS Access VBA that's of the newer format?如何在更新格式的 MS Access VBA 中打开一个新的 Excel 工作簿?
【发布时间】:2019-03-23 08:56:26
【问题描述】:

我正在使用 MS Access 和 Excel 2010。

在 MS Access VBA 中,我像这样创建/打开新工作簿:

Set objXl = CreateObject("Excel.Application") 
Set xlWBk = objXl.Workbooks.Add

尽管拥有 Excel 2010,但无论出于何种原因,此工作簿最多只能达到 65535 行,我认为是因为出于某种原因,它在制作新书或其他内容时默认为 .xls。

只有当我保存为 xlsx/close/reopen 时,我才能获得完整的 100 万多行:

xlWBk.SaveAs someFilePath, FileFormat:=xlOpenXMLWorkbook 'xlsx format AFAIK
xlWBk.Close
Set xlWBk = objXl.Workbooks.Open(someFilePath)

有没有办法将新 Excel 工作簿的创建默认为 .xlsx 格式,其中包含完整的行数,而无需保存/关闭/重新打开它?

编辑:就我而言,无论出于何种原因,更改 Excel 选项中的默认保存方法似乎都不会生效。新工作簿总是希望在兼容模式下打开。

【问题讨论】:

  • 您在 Excel 选项中设置的默认保存格式是什么?
  • @Rory 哦,伙计,97-2003 ......就是这样吗?!
  • 很遗憾没有,即使将默认保存选项更改为 .xlsx 也没有解决问题:(
  • 在创建和打开文件时是否默认为 .xls?
  • 也许您可以在创建工作簿之前尝试更改objXl.DefaultSaveFormat?

标签: excel ms-access vba ms-access-2010


【解决方案1】:

您可以在创建工作簿之前设置default format:

Set objXl = CreateObject("Excel.Application")
objXl.DefaultSaveFormat = xlOpenXMLWorkbook ' or xlOpenXMLWorkbookMacroEnabled
Set xlWBk = objXl.Workbooks.Add

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-09-10
    • 2018-12-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-26
    相关资源
    最近更新 更多