|
作 者:tmtony
摘 要:ACCESS可以在退出时压缩数据库,但是我想在代码中来压缩当前打开的数据库,能办到吗?
正 文:
ACCESS只能压缩已关闭的ACCESS数据库,因此,不能在代码中直接对当前的数据库进行。
但是ACCESS可在菜单上选择[压缩]来压缩当前正打开的数据库,如是我们就可以通过程序临时添加一个工具条按钮,然后使用 SendKeys 来模拟键盘操作,实现压缩当前数据库,压缩后它会重新打开。函数如下:
Function Compact()
' 添加一个工具条
With CommandBars.Add(, msoBarFloating, , True)
' 在工具条上添加一个按钮,这个按钮是从系统菜单的[工具]中[压缩]产生的
.Controls.Add msoControlButton, CommandBars("Tools").Controls(7).CommandBar.Controls(2).Id
.Visible = True
' 将焦点移到该按钮上
.Controls(1).SetFocus
' 模拟击键
SendKeys "{ENTER}"
End With
End Function
|
|