superb.. master Hendrik. Jan tidak bisa menemukan script yang lebih ringkas lagi untuk poin 1 maupun poin 2 Mungkin ada yang lain memiliki pendapat tentang plus minusnya menggunakan .select dan .activate dalam vba, silakan dishare ilmunya di sini
Salam, -Miss Jan Raisin- Pada 10 April 2013 17.32, hendrik karnadi <[email protected]>menulis: > ** > > > Terima kasih Miss Jan atas koreksinya. > > Dengan asumsi Nama terisi penuh (tidak kosong di tengah) maka saya coba > revisi seperti ini, > > Untuk mencari baris baru > Sub BarBar() > Columns("A:A").Find(vbNullString).Select > End Sub > Yang ini kayaknya cukup pendek, mustinya sdh OK > > Untuk mencari Nama tertentu (lengkap, tidak masalah huruf besar kecil) > Sub RekTtt() > On Error GoTo Pesan > skunci = InputBox("Masukkan Nama") > If skunci <> vbNullString Then Columns("A:A").Find(skunci, > Lookat:=xlWhole).Activate > Exit Sub > Pesan: > MsgBox "Nama tidak ada", vbInformation, "PESAN" > End Sub > Yang ini terpaksa agak panjang supaya logikanya nyambung. > > Khusus yang kedua, ada kode yang bisa lebih pendek Miss Jan ? > > Salam, > HK > > > ------------------------------ > *From:* Jan Raisin <[email protected]> > *To:* [email protected] > *Sent:* Wednesday, 10 April 2013, 14:26 > *Subject:* Re: [belajar-excel] Cari baris baru dan record tertentu > > > pak Hendrik, > > untuk script yang ini: > Sub BarBar() > Columns("A:A").SpecialCells(xlLastCell).Offset(1, 0).Select > End Sub > > coba lakukan tes seperti ini pada workbook yang baru: > 1. Buat header di cell A1 > 2. input data manual di cell A2 sampai A20 (sembarang data) > 3. hapus data mulai cell A2 sampai A20 > 4. jalankan script tadi dan lihat hasilnya > > Lalu untuk script yang ini: > Sub RekTtt() > Columns("A:A").Find("Sania").Activate > End Sub > > bagaimana jika ternyata tidak ada cell yang berisi kata Sania ? > > IMHO, > > >> proses select atau activate sebisa mungkin dihindari, karena bisa > dimanfaatkan untuk proses yang lain > >> pencarian posisi dengan menggunakan SpecialCell untuk input data yang > baru kadang menghasilkan data yang tidak tepat. > >> posisi pencarian record sebaiknya dimasukkan ke dalam variabel bertipe > range, lalu dilakukan kros cek apakah record tersebut ada atau tidak > > ini hanya pendapat pribadi Jan yang masih banyak kekurangannya. jika ada > yang salah tolong dikoreksi. > > Salam, > > -Miss Jan Raisin- > > > > Pada 10 April 2013 13.30, hendrik karnadi <[email protected]>menulis: > > ** > > Rekan Be-Exceler, > > Dalam database kita sering dihadapkan pada dua hal, yaitu: > - Mencari baris baru untuk input data baru > - Mencari record tertentu dari data yang sudah ada, mis. untuk diedit > > Biasanya/sering kita gunakan Offset(Tabel.Rows.Count+1,.....) atau > .......End(xlUp) untuk mencari baris baru dan Find("xyz", Lookin=xlValues) > untuk mencari record tertentu yang sudah ada. > > Untuk mencari baris baru saya gunakan code: > Sub BarBar() > Columns("A:A").SpecialCells(xlLastCell).Offset(1, 0).Select > End Sub > > Untuk mencari record tertentu (mis "Sania") saya gunakan code: > Sub RekTtt() > Columns("A:A").Find("Sania").Activate > End Sub > > File terlampir. > > Pertanyaannya: > Apakah kedua code tsb mengandung kelemahan? > > Salam, > HK > > > > >

