我有一个主工作簿从其他工作簿工作表中提取数据,然后关闭修改后的工作簿来抑制保存选项。
other_wb.Close Savechanges = False
然而,当在DEBUG模式下运行宏或单步执行此函数调用时,它仍然保存文件。有没有另外一种方法可以关闭而不保存?这种行为有什么解释吗?
如果需要,我可以提供更多信息。
答案 0 :(得分:7)
Savechanges
是一个未定义的变量。因此Empty
; Empty
是假的,因此表达式Savechanges = False
的计算结果为True
,因此调用变为other_wb.Close True
,从而保存文件。
你错过了冒号:
other_wb.Close Savechanges:= False
将Option Explicit
置于所有代码模块之上,以便永远不必处理此类问题。