logika dasar yang harusdicari pertama  kali untuk solusi kasus
ini adalah  mencari posisi pada baris ke
berapa nilai yang diisikan pada  cell J5
berada pada tabel nilai (F4:H20) .
karena
tidak  semua  nilai yang disikan di J5  ada yang sama persis dengan yang ada di
tabel  nilai cari (F4:H20)
, maka dicari angka yang paling sedikit selisihnya.  jadi setiap  angka yang 
ada di  (F4:H20)  dikurangi dengan  angka di J5 .
karena
deret angka di (F4:H20) ada yang lebih besar  dan lebih kecil dari J5 maka ada 
nilai negatif dan positif ,padahal yang
ingin dicari nantinya adalah nilai yang selisih angkanya paling kecil  maka 
ketika dicari angka minimal yang muncul
adalah  angka negatif terbesar. untuk
menghindari ini diberi pengaman dengan fungsi ABS yang  berfungsi  untuk  
mempositifkan seluruh
angka  selisih . baru dari sini dicari
nilai terkecil.
formulanya
:
{=MIN(IF(ABS($F$4:$H$20-$J5)=MIN(ABS($F$4:$H$20-$J5));ROW($F$4:$H$20))}
dan menghasilkan  angka  9.
selanjutnya
angka  ini dipakai sebagai  acuan untuk menentukan baris akhir dari
pencrian pada  kolom  Position Level, level , dan grade (kolom
B,C,dan D) yang  masing masing diawali
dari baris ke 4.
karena  masing  masing  baris pada kolom  tsb  tidak semuanya berisi  data ,
contohnya  pada  kolom B baris ke 9  (B9)  maka data yang dicari mengambil 
data  pada baris di atasnya yang ada datanya  dalam hal ini  B8 maka  formula 
yang tepat  untuk mencari  nilai  dari baris  terakahir yang berisi  data 
adalah  dengan  menggunakan  formula :
{=MAX(IF(LEN($B$4:$B$9);ROW($B$4:$B$9)))} 
dan
akan menghasilkan  angka 8
berarti
nilai  yang dicari  berada di B8. 
dengan
fungsi  =INDIRECT(B8)  yang dihasilkan  adalah  nilai (data) yang ada di B8.
berdasarkan  asumsi ini  maka dua  fungsi  di atas bisa kita modifikasi  untuk  
menghasilkan  nilai yang
diinginkan 
formula  lengkapnya   untuk  position level
{=INDIRECT("B"&MAX(IF(LEN(INDIRECT("B4:B"&MAX(IF(ABS($F$4:$H$20-$J5)=MIN(ABS($F$4:$H$20-$J5));ROW($F$4:$H$20)))));ROW(INDIRECT("B4:B"&MAX(IF(ABS($F$4:$H$20-$J5)=MIN(ABS($F$4:$H$20-$J5));ROW($F$4:$H$20))))))))}
sedangkan  untuk  mencari  nilai level  huruf  B (yang berwarna  merah  di 
ganti  pada formula  di atas diganti  C  dan
untuk  nilai grade  diganti  D (sesuai dengan letak kolomnya)

lihat attachment

wassalam

Ghozi Alkatiri



________________________________
 Dari: Ase blajar Excel <[email protected]>
Kepada: "[email protected]" <[email protected]> 
Dikirim: Selasa, 12 Juni 2012 12:03
Judul: ]] XL-mania [[ Mencari Posisi dan Level berdasarkan Gaji
 

  
Dear Xcel mate,

Saya mohon bantuannya untuk masalah saya, dimana saya ingin mengetahui Posisi, 
Level dan Grade seseorang jika diketahui nilai dari gajinya...
File terlampir...
Terimakasih sebelumnya ...

salam,
Ase
 

Attachment: GHOZI 12062012 Mencari Posisi berdasarkan Gaji.xlsx
Description: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet

Kirim email ke