VB 保存EXCEL文件后,若有文件同名,则EXCEL会跳出是否需要替换的对话框,请问VB如何自动按“确认”。

程序:
msg = MsgBox("合同:" & b(h2, 2) & "参数表已经存在,是否替换?", 1 + 32 + 256)
If msg = vbOK Then
xlBook.SaveAs ("d:\新建文件夹\" & b(h2, 2) & ".xls")
End If

第1个回答  2019-10-28
我也在找这个答案,但网上都没有直接的答案,这是我自己尝试后的结果:
xlBook.SaveAs(Filename:=<filename>, ConflictResolution:=XlSaveConflictResolution.xlLocalSessionChanges)
第2个回答  2012-07-30
sub test()
application.DisplayAlerts = False
语句
application.DisplayAlerts = true
end sub
第3个回答  推荐于2016-06-23
语法
表达式.SaveAs(FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
参数
ConflictResolution 它确定该方法在保存工作簿时如何解决冲突。如果设为 xlUserResolution,则显示冲突解决对话框。如果设为 xlLocalSessionChanges,则自动接受本地用户的更改。如果设为 xlOtherSessionChanges,则自动接受来自其他会话的更改(而不是本地用户的更改)。如果省略此参数,则显示冲突处理对话框。
ConflictResolution 值说明:
名称 值 说明
xlLocalSessionChanges 2 总是接受本地用户所做的更改。

xlOtherSessionChanges 3 总是拒绝本地用户所做的更改。
xlUserResolution 1 弹出对话框请求用户解决冲突。追问

请问该语句格式应该是怎么写?
我试过:
xlBook.SaveAs ("d:\新建文件夹\" & b(h2, 2) & ".xls",xlLocalSessionChanges)不行;
xlBook.SaveAs ("d:\新建文件夹\" & b(h2, 2) & ".xls",ConflictResolution=xlLocalSessionChanges)不行;
a=
xlBook.SaveAs ("d:\新建文件夹\" & b(h2, 2) & ".xls",xlLocalSessionChanges)不行;
请问:正确的表达方式应该是怎样的???

追答

看看语法格式啊。
表达式.SaveAs(FileName, FileFormat, Password, WriteResPassword, ReadOnlyRecommended, CreateBackup, AccessMode, ConflictResolution, AddToMru, TextCodepage, TextVisualLayout, Local)
FileName和ConflictResolution中间还有那么多参数呢。
SaveAs("d:\新建文件夹\" & b(h2, 2) & ".xls",,,,,,,2)
SaveAs("d:\新建文件夹\" & b(h2, 2) & ".xls",,,,,,,xlLocalSessionChanges)

本回答被提问者和网友采纳