【发布时间】:2014-05-14 14:19:04
【问题描述】:
我正在将表格的内容从 access 写入 excel(从 access 打开 excel 文件)写完后,我试图将所有工作簿保存在 appXL 应用程序中。为此,我在保存之前将 DispalyAlerts 设为 false,并在保存后重新打开。将内容写入excel后,我将关闭访问。写完后,当我试图关闭 excel 时,它没有发出任何警报,比如你想保存内容吗?
我的 vba 代码
Sub Writexl()
Dim appXL As Excel.Application
Dim wb As Excel.Workbook
StrwbPath="C:\temp\sample.xls"
Set appXL = CreateObject("Excel.Application")
With appXL
Set wb = .Workbooks.Open(StrwbPath)
.Visible = True
End With
'here code for writing contents
'save workbook after writing
appXL.Application.DisplayAlerts = False
For Each w In appXL.Application.Workbooks
w.Save
Next w
appXL.Application.DisplayAlerts = True
DoCmd.Quit acQuitSaveAll
Application.Quit
End sub
【问题讨论】:
-
你在哪里关闭 Excel?我看到了
Application.Quit,但那不是 Excel.Application。另外,我相信如果保存了所有打开的工作簿,则不会显示任何警报。 -
我没有关闭excel,它仍然按照要求写入后打开。有什么方法可以在保存内容或写入内容后启用显示警报。
-
警报已启用,除非您正在执行其他操作将其关闭。如当前所述,关闭 Excel 时根本不会显示任何警报。保存所有工作簿。没有什么需要提醒您的。
-
您是否曾在代码完成运行之前停止过代码?还是设置
DisplayAlerts = False后出错了?
标签: ms-access vba ms-access-2010