waduh.. :) seperti nya logika kemungkinan2 yg terakhir di jabarkan Mr. Kid, masuk akal :)
Maklum pak. VBA merupakan hal baru buat saya. Dan logika pemecahan masalah nya masih "cemen" hehe.. :D Saya coba cerna dulu pak. Terima kasih Mr. Kid "I'll be back.." 2012/9/23 Kid Mr. <mr.nm...@gmail.com> > ** > > > 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 >> >> >> >> > >