Jumat, 06 April 2012

Re: Bls: [belajar-access] VBA Repair and Compact database

 

Mas Agung ko ga bisa ya... ada pesan invalid call argument or prosedure. pada baris ...
 CommandBars("Menu Bar").Controls("Tools").Controls("Database utilities").Controls("Compact and repair database...").accDoDefaultAction

gimana ya...


From: agung <agunghend2001@yahoo.com>
To: belajar-access@yahoogroups.com
Sent: Saturday, April 7, 2012 6:32 AM
Subject: Re: Bls: [belajar-access] VBA Repair and Compact database

 

Mas Andi,

coba cara berikut, sy sdh terapkan dan hasilnya sih terlihat spy yg Anda butuhkan, semoga...

buat 1 command button, lalu copy paste code di bawah:

Private Sub cmdOk_Click()
    If MsgBox("Program akan melakukan compact & repair!" _
       & Chr(13) & "Ketika selesai,  & bila diperlukan..." _
       & Chr(13) & "tutup aplikasi terlebih dulu lalu Anda harus login kembali.", _
       vbExclamation + vbYesNo, "Compact & Repair") = vbYes Then
       CommandBars("Menu Bar").Controls("Tools").Controls("Database utilities").Controls("Compact and repair database...").accDoDefaultAction
    End If
End Sub

Regards,
Agung Hend

http://simrs.tk 


--- In belajar-access@yahoogroups.com, Andi Ali <aliandi05@...> wrote:
>
> makasi mas syarief dan mas sofyan.. sudah saya coba dan berhasil...
> namun yang saya harapkan adalah meng-Compac dan repair data pada file access yang terkait, bukan file access di luar aplikasi yang dijalankan...
> mohon penjelasannya....

> ________________________________
> From: Sofyan Efendi sofyanefendi@...
> To: belajar-access@yahoogroups.com
> Sent: Friday, April 6, 2012 6:06 AM
> Subject: Re: Bls: [belajar-access] VBA Repair and Compact database
>
>
>  
> Dear Mas Andi,
>
> Sekedar memperkaya pengetahuan dari yg sudah disampaikan Mas Syarief, kita bisa manfaatkan MSACCESS.EXE untuk melakukan compact. Dahulu masih zamannya file MDB di kawinkan dengan MDW. Ini saya copy paste kode yg dahulu saya gunakan.
>
> Public Function Compact_MDB(My_MDB_File As String)
> 'Copyright © 2005, by Sofyan Efendi, all rights reserved.
> On Error GoTo PesanError
>
> Dim ms_access As String, mdw_file As String
> Dim strPath As String, strPath2 As String
>
> If Right(My_MDB_File, 4) <> ".mdb" Then
> MsgBox "Yang hendak Anda compact bukan MDB file.",vbInformation ,"Not MDB file"
> Exit Function
> End If
>
> 'Tentukan lokasi MsAccess.Exe di PC Anda:
> ms_access = """C:\Program Files\Microsoft Office XP\Office10\MSACCESS.EXE"" "
>
> 'Tentukan lokasi System.Mdw untuk file MDB Anda:
> mdw_file = """C:\Program Files\Microsoft Office XP\Office10\System.mdw"" "
> strPath = ms_access & My_MDB_File & " /WRKGRP " & mdw_file & "/compact "
> Call Shell(strPath, vbHide)
>
> KeluarProgram:
> Exit Function
>
> PesanError:
> MsgBox "Error " & Err.Number & vbCrLf _
> & Err.Description, vbCritical + vbOKOnly, App.Title
> Resume KeluarProgram
>
> End Function
>
> O…ya, nama file dan folder diatas hanya contoh, Anda harus menyesuaikan dengan nama file dan folder di PC nya. Bila menggunakan Access 2007, toinggal dimodif sedikit kodenya.
>
> Bagaimana seandainya file MDB Anda dipassword atau menggunakan level security menggunakan MDW ? Cukup modifikasi pada baris sbb:
>
> strPath = ms_access & My_MDB_File & " /WRKGRP " & mdw_file & "/compact "
>
> Menjadi:
>
> strPath = ms_access & My_MDB_File & " /WRKGRP " & mdw_file & " /user "UserNameAnda" /pwd "PasswordAnda" /compact "
>
> Wassalaamu'alaikum Warahmatullahi Wabarakatuh,
> Sofyan Efendi.
> http://imopi.wordpress.com/
>
> --- In belajar-access@yahoogroups.com, Nyong Arif nyong_arif@ wrote:


__._,_.___
Recent Activity:
SPAM IS PROHIBITED
.

__,_._,___

Tidak ada komentar:

Posting Komentar