Sama-sama. Untuk sekedar wacana, susunan pengkondisian seperti : IF uniqueval=1 then IF menurutC = 0 then 'kondisi 1 else 'kondisi 2 endif else if menurutC = 0 then 'kondisi 4 else 'kondisi 3 endif endif
sering disusun menjadi : IF uniqueval=1 then IF menurutC = 0 then 'kondisi 1 else 'kondisi 2 endif elseif menurutC = 0 then 'kondisi 4 else 'kondisi 3 endif Wassalam, Kid. 2012/9/23 hendrik karnadi <hendrikkarn...@yahoo.com> > ** > > > Ok, terima kasih. > Saya sdh dapat poinnya. > > Salam, > Hendrik Karnadi > > ------------------------------ > *From:* Kid Mr. <mr.nm...@gmail.com> > *To:* belajar-excel@yahoogroups.com > *Sent:* Sunday, 23 September 2012, 21:18 > *Subject:* Re: Fw: [belajar-excel] Menghasilan Nilai Unique > > > Silakan Pak Hendrik. > Supaya diskusi bisa lebih berkembang. > > Berikut petikan syarat unik berdasar kolom C : > *"Syarat unik menurut kolom C adalah jumlah cacah di kolom C terhadap > data bernilai inputan harus bernilai 0. > Berbeda dengan yang UniqueVal ya" > * > Kenapa kok berbeda ya ? > > Dari konsep itulah maka akan terbentuk pengkondisian dengan struktur : > IF uniqueval=1 then > IF menurutC = 0 then > 'kondisi 1 > else > 'kondisi 2 > endif > else > if menurutC = 0 then > 'kondisi 4 > else > 'kondisi 3 > endif > endif > > Idealnya, jika tidak dinyatakan unik oleh kolom C, maka tidak boleh > ditulis di kolom C > Idealnya, jika inputan di kolom A ternyata tidak unik menurut A walau > dinyatakan unik menurut kolom C, maka pasti harus ada perlakuan untuk > menghindari kemungkinan terjadinya kondisi ini. > > Perkiraannya, usai pembahasan mengenai pengkondisian yang 4 tersebut, akan > ada masalah lagi dengan inputan di kolom A, karena dikolom A belum ada tapi > di kolom C sudah ada. Nah untuk hal ini titik awalnya ada di baris : > ActiveCell.Offset(-1, 0).Select > yang seharusnya tidak sekedar select tapi justru mengembalikan isi sebelum > diubah oleh user, padahal pengubahan oleh user itu malah membuat data jadi > gak karuan, baik di kolom A maupun di kolom C (rudundant). > > Wassalam, > Kid. > > 2012/9/23 hendrik karnadi <hendrikkarn...@yahoo.com> > > ** > > Boleh ikutan kan Mr. Kid ? > Mengenai Kondisi 1, menurut kolom A Unik dan menurut kolom C Unik, > prosesnya tulis di C > > Pertanyaannya : > Jika kolom C Unik (ada), apakah kolom C masih boleh ditulis ? > > Terima kasih. > > Salam, > Hendrik Karnadi > > > > ----- Forwarded Message ----- > *From:* Kid Mr. <mr.nm...@gmail.com> > *To:* belajar-excel@yahoogroups.com > *Sent:* Sunday, 23 September 2012, 15:16 > *Subject:* Re: [belajar-excel] Menghasilan Nilai Unique > > > Waalaikumussalam Wr. Wb. > > Pak Sony, > > berikut ini isi dari event worksheet change yang ada dalam file Bapak. > Private Sub Worksheet_Change(ByVal Target As Range) > Dim AvailCell* As Long*, UniqueVal As Long > > > AvailCell = WorksheetFunction.CountA(Range("C2:C1048576")) + 2 > UniqueVal = WorksheetFunction.CountIf(Range("A2:A1048576"), Range("A" > & Target.Row)) > > If Target.Column = 1 And Target.Row > 1 Then > If UniqueVal = 1 Then > Range("C" & AvailCell).Value = Range("A" & Target.Row).Value > *Exit Sub* > End If > MsgBox ("Nilai sudah ada. Ulangi") > ActiveCell.Offset(-1, 0).Select > End If > End Sub > Yang *merah *adalah tambahan > Yang *hijau *adalah penyesuaian layout penulisan agar lebih mudah dirunut > (hanya kebiasaan saja, tapi kebiasaan ini cukup baik dan banyak bermanfaat) > > Bagaimana jika dijabarkan seluruh kondisi yang mungkin terjadi berdasar > kedua kolom tersebut terhadap nilai inputan user dikolom A: > kondisi menurut kolom A menurut kolom > C prosesnya > 1 Unik > Unik tulis di C > 2 Unik Tidak > Unik gak boleh tulis di C tapi diapakan ? (belum > ada) > 3 Tidak Unik Tidak > Unik gak boleh tulis di C, beri pesan dan cell > aktif kembali ke cell yang diubah > 4 Tidak Unik > Unik mau diapakan ? (belum ada) > > Jadi, dibutuhkan 2 variabel cek, yaitu : > 1. berdasar kolom A (Anda sudah punya bernama UniqueVal) > 2. berdasar kolom C (karena belum punya, maka perlu dibuat) > > Syarat unik menurut kolom C adalah jumlah cacah di kolom C terhadap data > bernilai inputan harus bernilai 0. Berbeda dengan yang UniqueVal ya > > Susunan pengkondisiannya : > IF uniqueval=1 then > IF menurutC = 0 then > 'kondisi 1 > else > 'kondisi 2 > endif > else > if menurutC = 0 then > 'kondisi 4 > else > 'kondisi 3 > endif > endif > > Kira-kira cukup ya untuk jadi bahan uji coba... > Mungkin sebaiknya dicoba dulu. > Kalau udah mulai nyut-nyut mikirinnya, bisa diungkapkan ke milis lagi > > Selamat mencoba > > Wassalamualaikum Wr. Wb. > Kid. > > P.S. > File terlampir adalah iseng jika tanpa VBA. > Jangan terlalu dipikirkan dan tetap fokus dulu dengan permasalahan di atas > tadi > Tetap semangat > ;) > > > > > > 2012/9/23 Sony Ario <sony.ar...@gmail.com> > > ** > > Assalamualaikum teman2 BeExcel. > > Mohon bantuan. Pada file excel terlampir, saya berusaha untuk menghasilkan > nilai Unique yang di input di kolom A. Dan hasil nya, nilai unique tersebut > di masukan di kolom C (mulai dari C2 dst) dengan menggunakan Macro. > > Macro bekerja dengan baik saat saya input nilai baru di tiap2 baris di > kolom A. Akan tetapi apa bila saya kembali ke cell yang sudah ada nilai > nya, dan saya ketik ulang nilai yang ada pada cell tersebut macro nya tidak > bekerja. Sehingga di kolom C, nilai tersebut masuk lagi. Di file terlampir > saya contoh kan, setelah saya input semua, dan saya kembali ke cell A3, > maka nilai "Duren" akan di input lagi (saya highlight di cell C3 dan C4), > yg mana semestinya tidak. Dimanakah letak kesalahan nya ? > > Saya mengerti mungkin ada banyak cara yang lebih efisien dan dengan logika > pemrograman yang lebih baik. Namun ini hanyalah cara dari seorang pemula yg > baru niat mendalami Excel dan VBA :)... terima kasih sebelumnya saya > ucapkan. > > Wassalam > Sony > > > > > > > > > >