设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 3690|回复: 8
打印 上一主题 下一主题

[与其它组件] 如何用代码压缩当前数据库??

[复制链接]
跳转到指定楼层
1#
发表于 2003-6-13 00:44:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Private Sub 命令0_Click()
Dim dbNWD As DAO.Database
Set dbNWD = CurrentDb
DBEngine.CompactDatabase "C:\材料信息系统\材料信息系统", "C:\材料信息系统\材料信息系统"
Quit

End Sub
???????????????????????????????????????????????
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2003-6-13 01:31:00 | 只看该作者
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
3#
发表于 2003-6-13 04:35:00 | 只看该作者
试试我这个函数吧,我一直都这样用,没有出现过问题。
Function ComDB()
On Error GoTo err_ComDB

Dim mydb, strPath As String
Dim wenjian
Set wenjian = CreateObject("scripting.filesystemobject")
Set mydb = CurrentDb
strPath = Left(mydb.Name, Len(mydb.Name) - 9)

    DBEngine.CompactDatabase strPath & "BusDown.mdb", strPath & "temp.mdb"
    Kill strPath & "BusDown.mdb"
    Name strPath & "temp.mdb" As strPath & "BusDown.mdb"
    Exit Function
err_ComDB:
    MsgBox Err.Description
ComDB = CVErr(65534)
End Function
4#
发表于 2003-6-13 04:44:00 | 只看该作者
这是压缩一个没有打开的数据库函数!
5#
 楼主| 发表于 2003-6-13 05:32:00 | 只看该作者

Dim bbb As CommandBar

Set bbb = CommandBars.Add(, msoBarFloating, , True)
     bbb.Controls.Add msoControlButton, CommandBars("Tools").Controls(7).CommandBar.Controls(2).ID
     bbb.Visible = True
     bbb.Controls(1).SetFocus
     SendKeys "{ENTER}"
6#
 楼主| 发表于 2003-6-13 05:39:00 | 只看该作者
一比较,才知道
WITH CommandBars.Add(, msoBarFloating, , True) 的含义
要引用OFFCE OBJECT
另外
Controls(7).CommandBar.Controls(2).ID
这些号如何搞来?
多谢了。





[此贴子已经被作者于2003-6-12 21:39:36编辑过]

7#
发表于 2003-6-13 09:00:00 | 只看该作者
你要将当前数据库变成没有打开状态很容易呀,只要添加一个没有任何数据源的窗体,就在这个窗体中呼叫这个函数来执行数据库的压缩操作,不过要注意的是,在压缩数据库之前要保证当前数据库中没有任何的数据读取动作在发生,而且有限制条件,就是,你正在使用的数据库必须为前端,压缩动作只是对后台数据库压缩。


[此贴子已经被作者于2003-6-13 1:02:32编辑过]

8#
发表于 2013-6-1 21:50:18 | 只看该作者
学习!!!
回复

使用道具 举报

9#
发表于 2013-6-2 11:10:29 | 只看该作者
以前在论坛学习的方法,access2003 已测试可用

'关闭主窗体并修复压缩数据库
MsgBox ("压缩数据库并重新打开窗口")
CommandBars("Tools").Controls("数据库实用工具(&D)").Controls("压缩和修复数据库(&C)...").accDoDefaultAction
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-4-28 21:16 , Processed in 0.091553 second(s), 32 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表