Hai pak Harry, algoritma pemrograman yang telah disampaikan oleh Mr.Kid ---kalo kata pak presiden "Sudah Terang Benderang"---, jadi seYogya-nya (gak ada se-Jakarta ya) jika script vba tersebut adalah hasil kreasi anda sendiri.. seharusnya dengan mudah anda menuangkannya ke dalam user form.. ^_^
kalo untuk saya yang masih pemula sekali, lebih mudah menulis script dari awal dibandingkan menelusuri logika pemrograman yang sudah ada.. ---mungkin sama dengan tukang bangunan.. dari pada disuruh ngerombak rumah yang sudah jadi mendingan milih ngebangun dari awal--- ini hanya pendapat pribadi ya.. ^_^ tapi...(ada tapinya nih..) saya coba bantu untuk solusi editnya saja ya.. ^_^ Dim r As Long ' cek dahulu, apakah data ada yang kosong atau tidak ' jika ada yang kosong maka kasih tau usernya buat ngisi yang masih kosong If txtALAMAT = "" Or txtJURUSAN = "" Or txtTGLDAFTAR = "" Or txtTGLTES = "" Or _ txtLblUser = "" Or txtTGLINPUT = "" Then MsgBox "Input dulu yang kosong ya...", vbOKOnly, "Iseng aja luh.. ^_^" Exit Sub End If ' cek lagi apakah ada perubahan data apa nggak, kalo nggak ada ' ya ngapain juga nulis data ke database.. cape-capein aja ^_^ r = Cbonama.ListIndex + 2 If MemMaster(r, 3) <> txtALAMAT Then Sheets("sheet1").Cells(r, 3).Value = txtALAMAT End If If MemMaster(r, 4) <> txtJURUSAN Then Sheets("sheet1").Cells(r, 4).Value = txtJURUSAN End If If MemMaster(r, 5) <> txtTGLDAFTAR Then Sheets("sheet1").Cells(r, 5).Value = txtTGLDAFTAR End If If MemMaster(r, 6) <> txtTGLTES Then Sheets("sheet1").Cells(r, 6).Value = Format(txtTGLTES, "dd-mm-yyyy") End If If MemMaster(r, 7) <> txtLblUser Then Sheets("sheet1").Cells(r, 3).Value = txtLblUser End If If MemMaster(r, 8) <> txtTGLINPUT Then Sheets("sheet1").Cells(r, 8).Value = Format(txtTGLINPUT, "dd-mm-yyyy") End If Cbonama.Value = "" txtALAMAT.Value = "" txtJURUSAN.Value = "" txtTGLDAFTAR.Value = "" txtTGLTES.Value = "" txtLblUser.Value = "" txtTGLINPUT.Value = "" script yang buat pindah datanya mana??? ---nanti ya, masih harus nyari rumput buat kasih makan kambing dulu, kalo sempet nanti diposting lagi, tapi kalo mau coba ikuti logika pemrograman dari Mr. Kid--- lain kali mbok ya'o kalo kasih nama command button jangan cmdAdd semua.. bingung jadinya @_@ script tersebut ditulis di salah satu command button yang nama-nya sama itu lho.. wassalam, -aji mumpung- (cah angon seko gunung merbabu) Pada 26 September 2012 16:38, Harry <hariansyah...@yahoo.com> menulis: > ** > > > Dear Mr. Kid, > > Terima kasih atas berkenan reply-nya. Tapi dr info tersebut, saya > kesulitan dalam menuangkannya dlm User Form yang saya maksudkan. > > Mohon berkenan kirimkan contoh User Form-nya seperti yang pernah saya > lampirkan. > > Terima kasih, > > Harry > > > ------------------------------ > *Dari:* Kid Mr. <mr.nm...@gmail.com> > *Kepada:* belajar-excel@yahoogroups.com > *Dikirim:* Selasa, 25 September 2012 22:30 > > *Judul:* Re: [belajar-excel] INPUT, EDIT & PINDAH TABEL > > > Oke. > > 1. Untuk Add data sudah bisa ya. > 2. Untuk menampilkan data yang akan di edit atau akan di-delete sudah bisa > juga bukan. Yang jelas, dalam proses itu, Anda bisa mendapatkan posisi > record. > *Posisi record itu* yang harus Anda ingat terus, yaitu *listindex > dari combobox + 1* > 3. Untuk proses edit data, ketika tombol save ditekan, harus ada proses : > >> 1. vallidasi terhadap isi setiap control dalam form, apakah pantas > untuk di save atau tidak. > >> 2. ketika hasil validasi sudah oke dan pantas disimpan, cek setiap > isi control dalam form dan bandingkan dengan nilai setiap kolom di baris > record tersebut > Jika berbeda dengan isi di tabel pada baris record itu, > salin nilai kolom di record itu ke kolom poin edit record itu juga > Jika sama, tidak perlu lakukan apapun > [proses nomor 2 ini adalah pencatatan histori yang Anda > inginkan, khusus untuk edit data] > >> 3. lakukan proses penulisan nilai di setiap control dalam form ke > masing-masing kolom yang bersesuaian pada record itu juga. > >> 4. proses selesai. > 4. Untuk proses pindah data, ketika tombol save ditekan : > (inti proses adalah salin data record itu ke tabel penampung data yang > dihapus, kemudian hapus data di tabel utama pada record itu) > >> 1. beri konfirmasi terakhir pad user apakah proses akan dilanjutkan > Jika ya, maka lanjutkan, jika tidak, maka batalkan proses > >> 2. salin data dari tabel utama di record itu ke tabel penampung di > baris baru > >> 3. hapus data dari tabel utama pada record itu > contoh untuk hapus data di record ke-3, mulai kolom B > sebanyak 1 baris x 10 kolom, dan range di shift ke atas > range("b4").resize(1,10).delete xlshiftup > sesuaikan rujukan range("b4").resize(1,10) dengan kebutuhan > yang telah diketahui nomor recordnya dari combobox list index (sudah > dibahas di atas sana) > >> 4. proses selesai. > > Wassalam, > Kid. > > >