Pak Amin,

Untuk cek ada atau tidaknya sebuah item pada sebuah kolom dimanapun, biasanya
dengan formula pengkondisian seperti IF.
Sedangkan bentuk umum IF :
=IF(  datanya sesuai kriteria sebuah nilai ,  nilai hasil IF jika sesuai
kondisi , nilai hasil IF jika tidak sesuai kondisi )

nilai hasil IF jika sesuai kondisi dan nilai hasil IF jika tidak sesuai
kondisi bisa berupa teks (diapit petik dua ["]), angka atau tanggal, nilai
dicell tertentu, hasil formula tertentu
datanya sesuai kriteria sebuah nilai berupa perbandingan atau suatu nilai
yang menghasilkan benar (TRUE setara bukan 0) atau salah (FALSE setara 0)

Contoh :
=IF( a7 > "c" , 23 , "masih kurang" )
Bahasa manusianya :
"Jika nilai di A7 lebih dari karakter 'c' bernilai benar (TRUE) maka hasilnya
adalah 23. Jika bernilai salah (FALSE) maka hasilnya suatu teks berbunyi
'masih kurang'. "

=IF( CountIF( $g$1:$m$17 , "c" )  ,  "OK"  ,  "gak ada di range data" )
Bahasa manusianya :
"Jika *jumlah item* (bukan subtotal item) di $g$1:$m$17 yang pasti bernilai
suatu teks 'c' bukan 0 (artinya ada) , maka hasilnya adalah suatu teks
berbunyi 'OK'. Jika ternyata jumlah item tersebut adalah 0 (artinya tidak
ada), maka hasilnya suatu teks berbunyi 'gak ada di range data'. "

nah... kalau ada kasus berbunyi :
"Jika di sheet 'FL' kolom B pada range tertentu *ada item* yang pasti sama
dengan nilai di cell C3 pada sheet 'Change Component' maka tulis hasilnya
berupa teks 'OK'. Jika ternyata *tidak ada item* tersebut maka hasilnya
berupa teks berbunyi 'NG'"
kira-kira akan menjadi ada formulanya ? Mau mencoba ? kalau ndak mau juga
gak apa-apa. nanti bisa nunggu postingan BeExceller lain.

Satu hal yang harus diusahakan secara maksimal dalam menyusun formula
adalah membuat rujukan ke suatu range dengan area yang sekecil mungkin yang
dibutuhkan. Jadi tidak ke seluruh kolom atau seluruh baris, kecuali jika
memang sangat dibutuhkan. Rujukan ke seluruh kolom atau baris biasanya
dibutuhkan ketika akan membuat suatu rujukan dinamis. Penggunaan formula
lookup (VLookUp,HLookUp,LookUp,Match) diusahakan tidak merujuk ke seluruh
kolom atau seluruh baris. Beberapa fungsi yang membutuhkan kriteria
(CountIF, SumIF, dsb) juga sebaiknya tidak merujuk ke seluruh kolom atau
seluruh baris.

Sekarang beda lagi obrolannya.
Pada sheet 'FL' ada 2 kolom. Saya ndak tahu apa makna kolom A (feeder) di
sheet 'FL' tersebut. Tapi, seluruh data di sheet ini bersifat unique
record. Artinya, tidak ada kombinasi 'feeder' (kolom A) dengan 'Part No'
(kolom B) yang sama. Jadi, bisa terjadi ada 'Part No' yang sama, tapi pasti
'feeder' nya beda. Pada tabel seperti ini, biasanya kedua kolom menjadi
kolom kunci jika akan melakukan komputasi antar tabel (antara tabel di
sheet 'FL' dengan tabel di sheet 'Change Component'). [ini biasanya loh
ya...]
[jadi kalau kasus ini tidak seperti yang diutarakan di atas, semoga obrolan
ini bisa menjadi wacana yang bermanfaat kedepannya nanti]

Untuk pengecekan ada atau tidaknya suatu record dengan kolom-kolom kunci
tertentu (kolom kunci lebih dari satu), maka dilakukan perbandingan
terhadap seluruh kolom kuncinya dengan hubungan antar kolom kunci berupa
hubungan logika AND bahasa umumnya 'DAN' alias harus terpenuhi keduanya,
yang setara dengan proses perkalian (pakai karakter asterik [*]).

Contoh :
kriteria 1 : feeder di sheet 'Change Component' sama dengan feeder di sheet
'FL'
kriteria 2 : PartNo di sheet 'Change Component' sama dengan PartNo di sheet
'FL'
kedua kriteria harus terpenuhi, maka dihubungkan dengan asterik (*)
maka kondisinya :
( 'Change Component' kolom Feeder = 'FL' kolom Feeder ) *
( 'Change Component' kolom PartNo = 'FL' kolom PartNo )

Yang biru akan menghasilkan TRUE (setara 1) atau FALSE (setara 0)
Yang hijau akan menghasilkan TRUE (setara 1) atau FALSE (setara 0)
maka hasil perkaliannya, hanya akan ada 4 macam, yaitu :
   biru                   hijau                    hasilnya
karena
TRUE                   TRUE                        1                    1 *
1
TRUE                   FALSE                       0                    1 *
0
FALSE                  TRUE                        0                    0 *
1
FALSE                  FALSE                       0                    0 *
0

Jadi, pengkondisian untuk cek ada atau tidaknya suatu data seperti kasus di
atas, pada kasus dengan multi kriteria, adalah dengan mengubah penggunaan
bagian CountIF. Pada Excel 2007 ke atas, bisa menggunakan CountIFs. Pada
semua versi bisa menggunakan SumProduct yang berisi kondisi dengan susunan biru
dan hijau di atas dengan bentuk :
*SumProduct(*   ( 'Change Component' kolom Feeder = 'FL' kolom Feeder ) *
( 'Change Component' kolom PartNo = 'FL' kolom PartNo )  *)*

Beberapa pengguna Excel menggunakan susunan kondisi biru dan hijau sebagai
berikut :
( 'Change Component' kolom Feeder & 'Change Component' kolom PartNo  = 'FL'
kolom Feeder & 'FL' kolom PartNo ) * 1
1 adalah sebagai pengkonversi data TRUE atau FALSE yang bertipe boolean
menjadi data bernilai 1 atau 0 yang bertipe numerik.
&    adalah operator untuk menambahkan data teks (menyambung sebuah data
teks dengan suatu teks lainnya yang sering disebut Concatenate)
Hasil dari kedua bentuk susunan secara umum adalah sama. Tapi, sepertinya
sejak dulu sampai sekarang, proses concatenate adalah proses yang
melelahkan bagi komputer. Jadi, ketika memproses suatu record mulai jumlah
record tertentu (relatif terhadap spesifikasi komputer), akan terasa
perbedaan kecepatan prosesnya.

Wassalam,
Kid.


2012/10/21 ngademin Thohari <[email protected]>

> **
>
>
> Be-exceller
>
> Bagaimana cara membandingkan data berbeda sheet dengan menghasilkan
> comment OK, dan NG
> di file terlampir.
>
> keterangan:
> di sheet CHANGE KOMPONENT di kolom C akan dicocokkan dengan sheet FL dan
> menghasilkan hasil di kolom J
> yang berbunyi OK/NG
>
> terima kasih
>
>
> amin
>
>  __
>

Kirim email ke