Access交流中心

北京 | 上海 | 天津 | 重庆 | 广州 | 深圳 | 珠海 | 汕头 | 佛山 | 中山 | 东莞 | 南京 | 苏州 | 无锡 | 常州 | 南通 | 扬州 | 徐州 | 杭州 | 温州 | 宁波 | 台州 | 福州 | 厦门 | 泉州 | 龙岩 | 合肥 | 芜湖 | 成都 | 遂宁 | 长沙 | 株洲 | 湘潭 | 武汉 | 南昌 | 济南 | 青岛 | 烟台 | 潍坊 | 淄博 | 济宁 | 太原 | 郑州 | 石家庄 | 保定 | 唐山 | 西安 | 大连 | 沈阳 | 长春 | 昆明 | 兰州 | 哈尔滨 | 佳木斯 | 南宁 | 桂林 | 海口 | 贵阳 | 西宁 | 乌鲁木齐 | 包头 |

找到一个压缩ACCESS的函数,但不知如何调用?

子煜  发表于:2018-03-12 17:16:46  
复制

Public Function ADOCompactDB(SourceFile As String, DestinationFile As String, Optional strPwd As String = "") As Boolean
'JET引擎压缩数据库
'---需引用Microsoft Jet and Replication Objects X.X library,其中 ( X.X 大于或等于 2.1 )。
'---适用范围广,带密码的数据库也可以
    On Error GoTo err_adoCompactDB
    Dim srph As String, ysdb As String
    Dim je As New JRO.JetEngine
    srph = DestinationFile
    ysdb = SourceFile
    If Dir(srph) <> "" Then Kill srph
    je.CompactDatabase "Provider=Microsoft.Ace.OLEDB.12.0;Data Source=" & ysdb & ";Jet OLEDB:Database Password=" & strPwd, "Provider=Microsoft.Ace.OLEDB.12.0; Data Source=" & srph & ";Jet OLEDB:Database Password=" & strPwd
    Set je = Nothing
    FileCopy srph, ysdb
    Kill srph
    ADOCompactDB = True
exit_adoCompactDB:
    Exit Function
err_adoCompactDB:
    ADOCompactDB = False
    MsgBox Err.Description, vbCritical, "错误提示"
    Resume exit_adoCompactDB

End Function


这个函数,怎样使用呢??

 

Top
MDZZ 发表于:2018-03-13 16:52:56
ADOCompactDB("原路径","目标路径","密码 可选  没必要就不要填")  写在按钮事件和模块运行都可以


子煜 发表于:2018-03-14 21:34:12

试过的,不行的。

Me.Text01 文本框是数据库路径

试过不用变量,直接用路径也一样出错,如下:




MDZZ 发表于:2018-03-15 13:16:51
你既然写了 扣号    起码加个call 把 。。。。

cwzj3807 发表于:2018-03-26 20:57:49
学习中

木易生 发表于:2019-06-27 10:09:20


aDOCompactDB "原路径","目标路径","密码") 密码没有可以不填 




pieryon 发表于:2019-06-27 10:14:48
dim b as boolean 
b = aDOCompactDB ("d:\aaa","d:\bbb","密码")
if b then 
'走成功的逻辑
else
'走失败的逻辑
end id 


总记录:6篇  页次:1/1 9 1 :