AccessDB関連テクニック集

HOME ExcelTOP

1.Accessデータベースの最適化をExcelツールから実行するには?


1.Accessデータベースの最適化をExcelツールから実行するには?

  この方法、私が見た限りExcelVBAマクロどの本を見ても書いてなく非常に困っていたところ、上司が闇のルートを使って調べてくれました。この方法を使って実現した時飛び上がって喜んだものです。  

 まず、「Visual Basic Editer」のメニューバーの「ツール」の「参照設定」で以下のライブラリを追加します。

    「Microsoft Jet and Replication Objects 2.5 Library」

※ バージョン番号が異なっても良いが、新しいバージョンを参照設定すると古いバージョンしか入っていないマシーンでは起動しません。

 
''Public Const cS_MdbActiveXName = "Provider=Microsoft.Jet.OLEDB.3.51;" ''Access97のライブラリ
Public Const cS_MdbActiveXName = "Provider=Microsoft.Jet.OLEDB.4.0;" ''Access2000以降のライブラリ

''アクセスDB最適化処理
Public Sub Sub_Saitekika()
' JRO を使用して Accessファイルを最適化する
 Dim J_JET As New JRO.JetEngine
 Dim S_MDBName As String
 Dim S_MDBName2 As String

 S_MDBName = 「最適化対象のMDBファイル名」
 S_MDBName2 = 「最適化後のMDBファイル名」※最適化の前と後で名前が変わります。

 ''ファイルの最適化
 J_JET.CompactDatabase cS_MdbActiveXName & _
             "Data Source=" & S_MDBName, _
             cS_MdbActiveXName & _
             "Data Source=" & S_MDBName2

 Kill S_MDBName ''元ファイルを削除する。
 Name S_MDBName2 As S_MDBName ''名前を変更する。

End Sub

TOP