Dear BeExceller,
Mr. Kid

Terima kasih atas berkenan jawabannya dan akan saya coba.
Btw, bagaimana cara memproteksi file database sebagaimana pertanyaan No. 4.
Jika tetap menggunakan rumus : Sheets("DATABASE").Protect "protect", dimana 
posisi penempatannya dan apa ada yang harus ditambahkan jika file DATABASE 
tersebut butuh proses buka tutup untuk dapat digunakan oleh banyak PC...???

Terima kasih & Wassalam,



Harry

N/B: Saya menggungakan proses buka tutup file database dengan harapan 
Workbooknya bisa
digunakan oleh lebih dari 1 PC yang hasil inputnya masuk ke file database.




________________________________
 Dari: Mr. Kid <mr.nm...@gmail.com>
Kepada: belajar-excel@yahoogroups.com 
Dikirim: Minggu, 28 Oktober 2012 15:12
Judul: Re: [belajar-excel] Workbook Error dengan tampilan I/O Error
 

  
Coba :
1. tutup semua file Excel.
2. ke folder temporary file milik windows dan hapus isinya
3. ke folder lokasi file excel yang error, dan cari file dengan nama aneh 
seperti kode tertentu dan hapus file tersebut (jika ada).
4. pada Office 2007 ke atas, coba lihat nama folder autorecover di Excel 
Options dan coba lihat keberadaan file autorecover dari file bermasalah 
tersebut di lokasi folder autorecover. Hapus file autorecover yang ada.

siapa tahu bisa...


Wassalam,
Kid.


On Sun, Oct 28, 2012 at 2:09 PM, Harry <hariansyah...@yahoo.com> wrote:

 
>  
>Dear
>BeExceller,
> 
>Kepada
>teman-teman BeExceller, saya mohon informasi dan solusi akan terjadinya error
>pada Workbook yang sudah saya buat. Tulisan yang muncul pada Workbook tersebut
>adalah I/O Error yang akhirnya Workbook tersebut tertutup dengan sendirinya.
> 
>Saya sudah
>mencoba mengkotak-katik rumus Workbook saya tersebut (Mis. menghapus, menambah
>dan memindahkan posisi rumusnya) tapi hasilya masih sering error.
> 
>Lampiran
>Workbook tidak saya lampirkan karena volumenya terlalu besar (lbh dari 5 MB).
>Besar harapan
>kiranya rekan-rekan BeExceller dapat memberikan solusi akan masalah tersebut.
>Terima kasih
>atas bantuan dan solusinya
> 
>Adapun
>keterangan akan Workbook tersebut adalah sebagai berikut :
>1.              Saya
>menggungakan proses buka tutup file database dengan harapan Workbooknya bisa
>digunakan oleh lebih dari 1 PC yang hasil inputnya masuk ke file database.
>Rumus-rumus yang saya gunakan sbgai contoh sbb:
> 
>Option Explicit
>Dim MemMaster As Range
>Dim EndShow As Boolean
> 
>Private Sub CmdClose_Click()
>   Dim iRow As Long, Reg As Range,
>oCtrl As Control
>   Dim wbkA As Workbook, wbkAKTIF
>As Workbook
>     
>   On Error Resume Next
>Set wbkA = ThisWorkbook
>If Workbooks("DATABASE.xls") Is Nothing Then
>     Set wbkAKTIF =
>Workbooks.Open(wbkA.Path & "\DATABASE.xls")
>Else
>    Set wbkAKTIF =
>Workbooks("DATABASE.xls")
>End If
>wbkA.Activate
> 
>Application.DisplayAlerts = False
>wbkAKTIF.Close True
>Application.DisplayAlerts = True
>wbkA.Activate
>    Unload Me
>frmMainMenu.Show
>End Sub
> 
>Private Sub
>UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
>   If CloseMode = 0 Then
>      Cancel = True
>    Unload Me
>   End If
>End Sub
> 
>Private Sub UserForm_Activate()
>   TANGGAL_PINJAM.Value =
>Format(Date, "dd-MM-yyyy")
>   TANGGAL_KEMBALI.Value =
>Format(Date, "dd-MM-yyyy")
>   Lbl_Date = Format(Date, "dd-MM-yyyy")
>   Lbl_Month_Year = Format(Date,
>"MMyyyy")
>End Sub
> 
>Private Sub UserForm_Initialize()
>   Lbl_User = "" & _
>   WorksheetFunction.Proper(Application.Range("ActUser"))
>    Dim wbkA As Workbook, wbkAKTIF
>As Workbook
>   
>    Set wbkA = ThisWorkbook
>    
>    '--- WBK READ ONLY ??? ---'
>>> START
>    Dim lTry As Long, lJeda As
>Long
>    Application.ScreenUpdating =
>False
>    Application.DisplayAlerts =
>False
>CobaBuka:
>    For lTry = 1 To 20
>   Dim I As Long, TbHeigh As Long,
>TbWidth
>   Set MemMaster = Sheets("SUMBER
>2").Cells(1).CurrentRegion
>   TbHeigh = MemMaster.Rows.Count
>- 1
>   TbWidth =
>MemMaster.Columns.Count - 1
>   Set MemMaster =
>MemMaster.Offset(2, 0).Resize(TbHeigh, TbWidth)
>          
>   Application.EnableEvents =
>False
>   With CboPENERBIT
>      .ColumnCount = 2
>      .BoundColumn = 1
>      For I = 1 To TbHeigh
>         .AddItem
>         .List(I - 1, 0) =
>MemMaster(I, 6)
>      Next I
>   End With
>   Application.EnableEvents = True
>        
>        Set wbkAKTIF =
>Workbooks.Open(wbkA.Path & "\DATABASE.xls")
>   Set MemMaster = Sheets("SUMBER
>2").Cells(1).CurrentRegion
>   TbHeigh = MemMaster.Rows.Count
>- 1
>   TbWidth =
>MemMaster.Columns.Count - 1
>   Set MemMaster =
>MemMaster.Offset(1, 0).Resize(TbHeigh, TbWidth)
>   
>   Application.EnableEvents = False
>   With CboPENGARANG
>      .ColumnCount = 2
>      .BoundColumn = 1
>      For I = 1 To TbHeigh
>         .AddItem
>         .List(I - 1, 0) =
>MemMaster(I, 3)
>      Next I
>   End With
>   Application.EnableEvents = True
>        If wbkAKTIF.ReadOnly Then
>            wbkAKTIF.Close False
>            If lTry = 20 Then
>                If
>MsgBox("Sudah dicoba membuka " & lTry & _
>                        "
>kali, dan masih digunakan oleh instansi Excel yang lain" & vbCrLf
>& _
>                        "Coba
>lagi ?", vbExclamation + vbYesNo, "Akses ke DATABASE") = vbYes
>Then
>                    GoTo CobaBuka
>                Else
>                    Application.ScreenUpdating = False
>                    Exit Sub
>                End If
>            End If
>        Else
>            wbkA.Activate
>            Exit For
>        End If
>        For lJeda = 1 To 100000000
>        Next lJeda
>    Next lTry
>    Application.ScreenUpdating =
>True
>    '--- WBK READ ONLY ??? ---'
>>> END
>   End Sub
> 
>Private Sub cmdAdd_Click()
>   Dim iRow As Long, Reg As Range,
>oCtrl As Control
>   Dim wbkA As Workbook, wbkAKTIF
>As Workbook
>     
>   On Error Resume Next
>Set wbkA = ThisWorkbook
>If Workbooks("DATABASE.xls") Is Nothing Then
>     Set wbkAKTIF =
>Workbooks.Open(wbkA.Path & "\DATABASE.xls")
>Else
>    Set wbkAKTIF =
>Workbooks("DATABASE.xls")
>End If
>wbkA.Activate
>        
>   Set Reg =
>wbkAKTIF.Worksheets("REGISTER").Cells(1)
>   'find second empty row in
>database
>   iRow = Reg(Rows.Count,
>2).End(xlUp).Offset(1, 0).Row
> 
>   'copy the data to the database
>   Reg(iRow, 2).Value = txtNAMABUKU.Value
>   Reg(iRow, 3).Value = txtTAHUN.Value
>   Reg(iRow, 4).Value = CboPENERBIT.Value
>   Reg(iRow, 5).Value =
>txtKETERANGAN.Value
>Dan lain-lain ………
>   Reg(iRow, 10).Value =
>Lbl_Month_Year
>   Reg(iRow, 11).Value = Lbl_User
>   Reg(iRow, 12).Value = Lbl_Date
>Dan lain-lain ………
> 
>   'clear the data
>   txtNAMABUKU.Value =
>""
>   txtTAHUN.Value = ""
>   CboPENERBIT.Value =
>""
>   txtKETERANGAN.Value =
>""
>Dan lain-lain ………
> 
>Application.DisplayAlerts = False
>wbkAKTIF.Close True
>Application.DisplayAlerts = True
>wbkA.Activate
> 
>Done:
>   If MsgBox("DATA ANDA TELAH
>DISIMPAN. TAMBAH...???", 32 + 4, "KONFIRMASI") = vbYes Then
>   Else
>      Unload Me
>   End If
>frmMainMenu.Show
>End Sub
> 
>2.              Pada
>Workbook tersebut saya menggunakan Userform yang berisi fitur MultiPage yang
>mengakifkan 2 MultiPage sekaligus. MultiPage 1 untuk registrasi dan MultiPage 2
>untuk referensi.
>(MultiPage untuk proses registrasi dan referensi sedangkan tombol SAVE,
>CLOSE, TANGGAL_PINJAM.Value &  TANGGAL_KEMBALI.Value
>berada diluar kolom MultiPage.
> 
>3.              Saya
>menggunakan User Form untuk pilihan dan proses Input, Edit dan Hapus dengan
>contoh rumus:
>    If MemMaster(r, 3) <>
>txtNAMABUKU Then
>        Sheets("REGISTER").Cells(r, 3).Value = txtNAMABUKU.Text
>    End If
> 
>4.              Jika pada
>Workbook A dan Workbook DATABASE ingin saya protect, dimana penempatan posisi
>rumusnya (Mis. Sheets("DATABASE").Protect "protect") dan 
>Sheets("DATABASE").Unprotect "protect")
>
>--- Mods ---
>Coba simpan workbook di cloud misal di 4Shared atau Box. Kemudian berikan link 
>unduhnya ke BeExceller. Kurangi jumlah datanya.
>------------
>
>

 

Kirim email ke