Re: [belajar-excel] TextBox otomatis
Alhamdulillah berhasil juga.. Makasih Miss Jan Raisin From: Jan Raisin miss.jan.rai...@gmail.com To: belajar-excel@yahoogroups.com Sent: Wednesday, April 2, 2014 1:34 PM Subject: Re: [belajar-excel] TextBox otomatis Wa'alaikumsalam wr. wb., thread ini tidak ada yang menanggapi karena tidak ada contoh file yang dilampirkan, sehingga BeExceller yang ingin membantu jadi enggan karena harus kerja bakti dahulu membuat datanya. asumsi berdasarkan isi email anda di milis ini asumsi: txtbox1 = kode_barang txtbox2 = nama_barang txtbox3 = harga_barang database di sheet2 input di sheet1 berasal dari masing-masing txtbox seluruh textbox ada di sebuah userform yang diinginkan: txtbox1 diisi dengan kode, maka txtbox2 akan menampilkan nama_barang, txtbox3 akan menampilkan harga_barang persiapan hal-hal yang akan digunakan (disingkat P dengan point masing-masing): P1: deklarasikan sebuah variabel bertipe string untuk menyompan isi txtbox1 dim nama_variabel as string P2: deklarasikan sebuah variabel bertipe long untuk menyimpan nomor baris akhir database dim nama_variabel as long P3: deklarasikan sebuah variabel bertipe range untuk menyimpan area database dim nama_variabel as range P4: deklarasikan sebuah variabel bertipe range untuk menyimpan hasil pencarian data dim nama_variabel as range P5: deklarasikan sebuah variabel bertipe long untuk menyimpan nomor baris hasil pencarian jika data ditemukan dim nama_variabel as long solusi: buat sebuah event change pada txtbox1, tujuannya jika terjadi perubahan isi pada txtbox1 maka macro akan bekerja simpan nilai txtbox1 ke dalam variabel P1, nama_variabel = txtbox1.text cari nomer baris terakhir dari database dan simpan ke dalam variabel P2, nama_variabel = sheets(nama_sheet).range(nama_kolom rows.count).end(xlup).row set lokasi database dan simpan ke dalam variabel P3 set nama_variabel = sheets(nama_sheet).range( range_database ) set P4 untuk mencari nilai P1 di dalam P3 set nama_variabel = nama_variabel.find( nama_variabel , lookat:=xlwhole ) jika P1 tidak ditemukan dalam P3 maka keluar dari prosedur if nama_variabel is nothing then exit sub jika P1 ditemukan dalam P3 maka ambil nilai barisnya lalu simpan ke dalam variabel P5 else nama_variabel = nama_variabel.row jika nilai P5 sudah didapat, maka masukkan nama_barang ke txtbox2 dan harga_barang ke txtbox3 berdasarkan nomer baris P5 pada saat yang sama, anda dapat langsung mengisi sheet1 berdasarkan nomer baris yang sudah disimpan dalam variabel P5, atau menyalin isi masing-masing txtbox ke sheet1 logikanya adalah seperti di atas, silakan disesuaikan dengan kondisi real yang ada. semoga solusinya gak salah2 amat ^_^ Wassalam, -Miss Jan Raisin- Pada 28 Maret 2014 16.15, amas solihin amas...@yahoo.com menulis: Assalamu'alaikum semuanya. Para master mohon dibantu. Saya punya kasus misal saya isi TextBox1 dengan kode barang kemudian TextBox2 dan TextBox3 akan otomatis keluar nama beserta harga,Database misal di ambil di sheet2 sedangkan isian user form di isi di sheet1. Terimakasih sebelumnya. Wassalam.. - Momod - untuk memudahkan BeExceller menanggapi kasus anda silakan melampirkan sample workbook 250 KB dengan cara mereply email ini tidak perlu melampirkan data asli yang penting mewakili kasus yang anda tanyakan __
[belajar-excel] TextBox otomatis
Assalamu'alaikum semuanya. Para master mohon dibantu. Saya punya kasus misal saya isi TextBox1 dengan kode barang kemudian TextBox2 dan TextBox3 akan otomatis keluar nama beserta harga,Database misal di ambil di sheet2 sedangkan isian user form di isi di sheet1. Terimakasih sebelumnya. Wassalam.. - Momod - untuk memudahkan BeExceller menanggapi kasus anda silakan melampirkan sample workbook 250 KB dengan cara mereply email ini tidak perlu melampirkan data asli yang penting mewakili kasus yang anda tanyakan __
Re: [belajar-excel] Textbox Otomatis
Hai Haris, 1. Bagaimana formulasi yang harus saya buat agar sistem baru membaca setelah data yang saya input penuh 4 karakter. sudah dibahas di email yang lalu kan ya ( https://groups.yahoo.com/neo/groups/belajar-excel/conversations/messages/30083 ) bunyinya begini : 2. nilai data yang dicari pasti lebih dari 3 karakter (ada penulisan teks 0 di karakter pertama) diberi kondisi terhadap jumlah karakter inputan yang diletakkan sebelum baris berbunyi : Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) dengan bunyi script kondisinya adalah : if len(skey)4 then exit sub endif 2. Bagaimana formulasi yang harus dibuat jika database di file yang berdeda. buka workbook yang berbeda itu, lalu ambil nilai dari workbook berbeda itu dan disimpan dalam variabel sKey. Setelah itu baru baris-baris pemeriksaan seperti nomor 1 lagi. Jangan lupa tutup workbook berbeda tersebut setelah tidak digunakan lagi. script buka workbook lain bisa diperoleh dari record macro (jika suka pakai record macro). methods milik workbook yang digunakan adalah methods open dim wbkApp as workbook, wbkLain as workbook set wbkapp=thisworkbook set wbklain=workbooks.open(nama workbook lain lengkap dengan pathnya) untuk tutup workbook lain menggunakan methods close seperti : worksbooks(nama workbooknya).close false 'false berarti tanpa di save kalau ada perubahan nilai data atau jika workbook berbeda sudah disimpan dalam variabel obejct workbook bernama wbkLain seperti script di atas tadi, bisa berupa : wbklain.close false Wassalam, Kid. 2014-02-03 haris.ri...@yahoo.co.id: Mis Jan Raisin Mr. Kid Saya ingin menambahkan msgBox apabila data tidak ditemukan, saya sudah coba menambahkan/memasangkan else dalam formulasi if yang Mis Mr ajarkan, tetapi yang sistem membacanya perkarakter sedangkan keypoint yang harus dibaca adalah 4 karakter sehingga keypoint selalu dianggap data yang salah. Dalam properti textbox1 sudah saya batasi untuk input maksimal 4 karakter. 1. Bagaimana formulasi yang harus saya buat agar sistem baru membaca setelah data yang saya input penuh 4 karakter. 2. Bagaimana formulasi yang harus dibuat jika database di file yang berdeda. terimaksih. Haris
Re: [belajar-excel] Textbox Otomatis
Assalamu'alaikum Mr.Kid Saya sudah coba seperti yang Mr. Kid sarankan termasuk pada saran Mr. Kid yang terdahulu. Berikut script yang saya tuliskan: if len(skey)4 then msgboxData tidak ditemukan... exit sub endif Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) Dengan script tersebut saat dalam textbox1 saya isi baru satu huruf saja msgbox sudah muncul, kalo tidak salah itu berarti proses sudah berjalan sebelum textbox1 terisi 4 huruf. Saya sudah coba dengan memunculkan dari event selanjutnya dan berhasil, rasanya kurang sreg aja Mr. Kid. Maunya kan event di textbox1 berjalan saat textbox sudah terisi 4 huruf atau huruf ke-4 selesai di ketikkan. Mohon maaf kalo saya ga ngerti-ngerti bertanya terus. Terimaksih. Wassalam Haris ---In belajar-excel@yahoogroups.com, mr.nmkid@... wrote: Hai Haris, 1. Bagaimana formulasi yang harus saya buat agar sistem baru membaca setelah data yang saya input penuh 4 karakter. sudah dibahas di email yang lalu kan ya (https://groups.yahoo.com/neo/groups/belajar-excel/conversations/messages/30083 https://groups.yahoo.com/neo/groups/belajar-excel/conversations/messages/30083) bunyinya begini : 2. nilai data yang dicari pasti lebih dari 3 karakter (ada penulisan teks 0 di karakter pertama) diberi kondisi terhadap jumlah karakter inputan yang diletakkan sebelum baris berbunyi : Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) dengan bunyi script kondisinya adalah : if len(skey)4 then exit sub endif 2. Bagaimana formulasi yang harus dibuat jika database di file yang berdeda. buka workbook yang berbeda itu, lalu ambil nilai dari workbook berbeda itu dan disimpan dalam variabel sKey. Setelah itu baru baris-baris pemeriksaan seperti nomor 1 lagi. Jangan lupa tutup workbook berbeda tersebut setelah tidak digunakan lagi. script buka workbook lain bisa diperoleh dari record macro (jika suka pakai record macro). methods milik workbook yang digunakan adalah methods open dim wbkApp as workbook, wbkLain as workbook set wbkapp=thisworkbook set wbklain=workbooks.open(nama workbook lain lengkap dengan pathnya) untuk tutup workbook lain menggunakan methods close seperti : worksbooks(nama workbooknya).close false 'false berarti tanpa di save kalau ada perubahan nilai data atau jika workbook berbeda sudah disimpan dalam variabel obejct workbook bernama wbkLain seperti script di atas tadi, bisa berupa : wbklain.close false Wassalam, Kid. 2014-02-03 haris.rifai@... mailto:haris.rifai@...: Mis Jan Raisin Mr. Kid Saya ingin menambahkan msgBox apabila data tidak ditemukan, saya sudah coba menambahkan/memasangkan else dalam formulasi if yang Mis Mr ajarkan, tetapi yang sistem membacanya perkarakter sedangkan keypoint yang harus dibaca adalah 4 karakter sehingga keypoint selalu dianggap data yang salah. Dalam properti textbox1 sudah saya batasi untuk input maksimal 4 karakter. 1. Bagaimana formulasi yang harus saya buat agar sistem baru membaca setelah data yang saya input penuh 4 karakter. 2. Bagaimana formulasi yang harus dibuat jika database di file yang berdeda. terimaksih. Haris
Re: [belajar-excel] Textbox Otomatis
وَعَلَيْكُمُ لسَّلاَمُ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ script yang diubah adalah yang berwarna biru sKey = TextBox1.Text TextBox2.Text = vbNullString TextBox3.Text = vbNullString if len(sKey) 4 then exit sub end if Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) If Not rgFind Is Nothing Then TextBox2.Text = rgFind.Offset(, 1).Value TextBox3.Text = rgFind.Offset(, 2).Value Else MsgBox Data tidak ditemukan, VbOkOnly, Hasil Pencarian End If وَسَّلاَمُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ -Miss Jan Raisin- Pada 3 Februari 2014 19.53, haris.ri...@yahoo.co.id menulis: Assalamu'alaikum Mr.Kid Saya sudah coba seperti yang Mr. Kid sarankan termasuk pada saran Mr. Kid yang terdahulu. Berikut script yang saya tuliskan: if len(skey)4 then msgboxData tidak ditemukan... exit sub endif Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) Dengan script tersebut saat dalam textbox1 saya isi baru satu huruf saja msgbox sudah muncul, kalo tidak salah itu berarti proses sudah berjalan sebelum textbox1 terisi 4 huruf. Saya sudah coba dengan memunculkan dari event selanjutnya dan berhasil, rasanya kurang sreg aja Mr. Kid. Maunya kan event di textbox1 berjalan saat textbox sudah terisi 4 huruf atau huruf ke-4 selesai di ketikkan. Mohon maaf kalo saya ga ngerti-ngerti bertanya terus. Terimaksih. Wassalam Haris ---In belajar-excel@yahoogroups.com, mr.nmkid@... wrote: Hai Haris, 1. Bagaimana formulasi yang harus saya buat agar sistem baru membaca setelah data yang saya input penuh 4 karakter. sudah dibahas di email yang lalu kan ya ( https://groups.yahoo.com/neo/groups/belajar-excel/conversations/messages/30083 ) bunyinya begini : 2. nilai data yang dicari pasti lebih dari 3 karakter (ada penulisan teks 0 di karakter pertama) diberi kondisi terhadap jumlah karakter inputan yang diletakkan sebelum baris berbunyi : Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) dengan bunyi script kondisinya adalah : if len(skey)4 then exit sub endif 2. Bagaimana formulasi yang harus dibuat jika database di file yang berdeda. buka workbook yang berbeda itu, lalu ambil nilai dari workbook berbeda itu dan disimpan dalam variabel sKey. Setelah itu baru baris-baris pemeriksaan seperti nomor 1 lagi. Jangan lupa tutup workbook berbeda tersebut setelah tidak digunakan lagi. script buka workbook lain bisa diperoleh dari record macro (jika suka pakai record macro). methods milik workbook yang digunakan adalah methods open dim wbkApp as workbook, wbkLain as workbook set wbkapp=thisworkbook set wbklain=workbooks.open(nama workbook lain lengkap dengan pathnya) untuk tutup workbook lain menggunakan methods close seperti : worksbooks(nama workbooknya).close false 'false berarti tanpa di save kalau ada perubahan nilai data atau jika workbook berbeda sudah disimpan dalam variabel obejct workbook bernama wbkLain seperti script di atas tadi, bisa berupa : wbklain.close false Wassalam, Kid.
Re: [belajar-excel] Textbox Otomatis
Alhamduliullah hirobbil'alamiin Terimakasih Mis. Jan Raisin, hasilnya sudah seperti yang saya maksud. Semoga MIlis ini semakain ramai pengunjung membernya, serta tetep terpelihara karena sangat berguna terutama bagi yang awam excel seperti saya. Sekali lagi terimaksih Mis. Jan Raisin Mr. Kid serta mentor-mentor Belajar Excel, dan tentunya juga buat BeXcel-er yang sempet ngebuka posting saya. Salam BeXcel-er. Wassalam. Haris.
Re: [belajar-excel] Textbox Otomatis
Hai Haris, pada textbox 1 dikasih event change, lalu diberi script seperti ini: Dim sKey As String Dim rgFind As Range sKey = TextBox1.Text ' simpan nilai textbox 1 ke dalam variabel TextBox2.Text = vbNullString ' hapus isi textbox 2 TextBox3.Text = vbNullString ' hapus isi textbox 3 Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) ' cari isi textbox 1 di kolom B, isinya harus sama persis If Not rgFind Is Nothing Then ' jika data ditemukan TextBox2.Text = rgFind.Offset(, 1).Value ' isi textbox 2 dengan nilai 1 kolom di sebelah kanan data TextBox3.Text = rgFind.Offset(, 2).Value ' isi textbox 3 dengan nilai 2 kolom si sebelah kanan data End If Wassalam. -Miss Jan Raisin- Pada 29 Januari 2014 14.47, haris.ri...@yahoo.co.id menulis: Salam BeExceler. Mohon arahanya ne agan-agan. Saya punya 3 textbox, saya pengin Textbox2 Textbox3 terisi secara otomatis setelah Textbox1 selesai diinput secara manual. Isi Textbox2 Textbox3 sesuai dengan data dalam Database mengikuti keypoint yang diinput dalam Textbox1. Untuk lebih jelasnya saya lampirkan file-nya. Haris
Re: [belajar-excel] Textbox Otomatis
Pinjam script-nya ya miss... mo nambahin dikit... sapa tahu ada gunanya... Dugaan : 1. bisa jadi nanti akan menjadikan userform sebagai alat edit juga. baris deklarasi variabel range diubah agar ber-scope module dengan memindahkan dan mengubah scope baris berbunyi : Dim rgFind As Range 'yang ada dalam prosedur sub event change si textbox menjadi : private rgFind As Range 'di blok deklarasi (baris paling atas dalam module tersebut setelah teks Option Explicit [jika ada]) 2. nilai data yang dicari pasti lebih dari 3 karakter (ada penulisan teks 0 di karakter pertama) diberi kondisi terhadap jumlah karakter inputan yang diletakkan sebelum baris berbunyi : Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) dengan bunyi script kondisinya adalah : if len(skey)4 then exit sub endif Wassalam, Kid. 2014-01-29 Jan Raisin miss.jan.rai...@gmail.com Hai Haris, pada textbox 1 dikasih event change, lalu diberi script seperti ini: Dim sKey As String Dim rgFind As Range sKey = TextBox1.Text ' simpan nilai textbox 1 ke dalam variabel TextBox2.Text = vbNullString ' hapus isi textbox 2 TextBox3.Text = vbNullString ' hapus isi textbox 3 Set rgFind = Range(b:b).Find(sKey, lookat:=xlWhole) ' cari isi textbox 1 di kolom B, isinya harus sama persis If Not rgFind Is Nothing Then ' jika data ditemukan TextBox2.Text = rgFind.Offset(, 1).Value ' isi textbox 2 dengan nilai 1 kolom di sebelah kanan data TextBox3.Text = rgFind.Offset(, 2).Value ' isi textbox 3 dengan nilai 2 kolom si sebelah kanan data End If Wassalam. -Miss Jan Raisin- Pada 29 Januari 2014 14.47, haris.ri...@yahoo.co.id menulis: Salam BeExceler. Mohon arahanya ne agan-agan. Saya punya 3 textbox, saya pengin Textbox2 Textbox3 terisi secara otomatis setelah Textbox1 selesai diinput secara manual. Isi Textbox2 Textbox3 sesuai dengan data dalam Database mengikuti keypoint yang diinput dalam Textbox1. Untuk lebih jelasnya saya lampirkan file-nya. Haris
Re: [belajar-excel] Textbox Otomatis
Terimakasih Mis Jan Raisin, sudah saya coba dan hasilnya sesuai yang saya maksud. Betul apa yang disampaikan Mr. Kid, coding tersebut memang saya aplikasikan dalam userform. Dan terimaksih banyak juga buat Mr. Kid atas tambahan masukannya. Saya harap tidak bosen jika saya akan banyak bertanya di waktu-waktu selanjutnya. Haris.
[belajar-excel] Textbox Otomatis
Salam BeExceler. Mohon arahanya ne agan-agan. Saya punya 3 textbox, saya pengin Textbox2 Textbox3 terisi secara otomatis setelah Textbox1 selesai diinput secara manual. Isi Textbox2 Textbox3 sesuai dengan data dalam Database mengikuti keypoint yang diinput dalam Textbox1. Untuk lebih jelasnya saya lampirkan file-nya. Haris - Mods - file lampiran kelihatannya tercecer.. silakan melampirkan file dengan cara mereply email ini ___