将新工作表添加到XLSM宏Excel文件时出错

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将新工作表添加到XLSM宏Excel文件时出错相关的知识,希望对你有一定的参考价值。

我在使用VBA在宏Excel文件中添加新工作表时发现了一个问题。我使用的方法无关紧要:

  • Sheets.add
  • 复制并粘贴工作表以创建新工作表

创建(或复制)新工作表但宏立即停止,没有任何消息错误,并且不执行其余代码。

我试图将文件转换为XLSX,现在,当我运行相同的代码时,工作表被创建(像之前一样)并且代码执行继续完美。

这就是我认为它与Macro Excel类型的文件相关的原因。

有没有人发现类似的错误?

在此先感谢您的帮助。

阿尔贝托


更新我以前的问题

我已经做了一个新的验证,在其他PC和Excel安装中测试完全相同的代码,并且它运行得很好。

我不知道为什么,但现在新的工作表已经创建,代码继续。两种设备之间的唯一区别是Excel 2016版本:标准版本和专业版本。但是,显然,这不能解释。

在任何情况下,我都必须调查正在停止执行代码的安装之一。

答案

在xlsm文件中尝试以下代码:

Dim ws As Worksheet
Set ws = Sheets.Add(After:=Sheets(Sheets.Count))

如果这不起作用,请告诉我。

以上是关于将新工作表添加到XLSM宏Excel文件时出错的主要内容,如果未能解决你的问题,请参考以下文章

使用 pandas 读取和更新 XLSM 文件中的工作表,同时保留 VBA 代码

excel2007以后的文件格式

C#互操作:将新工作表添加到现有文件后,excel进程未退出[重复]

Python - 运行 Excel 宏

使用 VBA 将包含 Excel 文件 (.xlsm) 的宏保存为不包含宏的文件 (.xlsx) 时抑制对话框

将 pandas 数据框写入 xlsm 文件(启用宏的 Excel)