السَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Semangat pagi,.
Alhamdulillah berhasil Mr. Kid.
{=INDEX($C$6:$C$22;SMALL(IF($B$6:$B$22=$G$5;ROW(1:1));ROW(1:1)))}
Terima kasih tambahan ilmunya. Luar Biasa.
Jazakumullah Khoiron Katsiron.
وَالسَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Warm Regards,
On 09/11/2015 22:56, 'Mr. Kid' [email protected] [belajar-excel] wrote:
Wa'alaikumussalam wr wb
Hai Heri,
Mungkin banyak BeExceller yang sedang tidak dapat online.
1. Fungsi Small bekerja terhadap data bertipe numerik saja. Itu
sebabnya data yang tidak bertipe numerik akan diabaikan oleh fungsi
ini. Ketika seluruh data yang harus dikerjakan oleh fungsi Small
adalah bertipe text, maka akan menghasilkan error value #NUM!.
2. Contoh kasus yang pertama adalah mengurutkan data bertipe numerik
dengan suatu kriteria tertentu. Itu sebabnya digunakan formula array
dengan susunan Small( IF() ), dengan bagian IF adalah pembentuk dan
pemilih nilai data yang akan diurutkan oleh fungsi Small. Jadi, bagian
nilai TRUE dari fungsi IF berisi nilai-nilai yang bertipe numerik.
3. Pada kasus yang datanya bertipe text, maka diperlukan suatu nilai
pengurut alias penentu urutan. Nilai penentu urutan ini yang akan di
urutkan oleh Small. Jika ada kriteria tertentu alias tidak semua data
yang diurutkan, maka akan membentuk formula array Small(IF()). Hasil
dari array formula Small(IF()) ini barulah berupa nilai-nilai pengurut
data alias nilai penentu urutan dan bukan nilai data text yang
dibutuhkan. Oleh sebab itu, biasanya digunakan fungsi Index sebagai
pengambil data text yang dibutuhkan berdasar nilai pengurutan hasil
Small(IF()). Inilah yang sering dikenal sebagai array formula filtering.
4. Susunan umum array formula filtering adalah :
Index( data_yang_diambil , Small( IF(
perbandingan_data_kriteria_dengan_nilai_kriteria , nilai_pengurut ) ,
nomor_hasil_urutan ) )
5. Dari susunan umum array formula filtering tersebut, maka bisa
dikembangkan agar seluruh nilai_pengurut mengandung nilai posisi
record data, sehingga fungsi Index dapat mengambil data tepat sasaran.
6. Coretan tentang array formula filtering ada disini
<http://excel-mr-kid.blogspot.co.id/2011/04/formula-filter-data-filtering-formula.html>.
Anda bisa mengembangkannya agar tidak membutuhkan cells maupun kolom
bantu.
7. Array formula yang memproses banyak data dalam sebuah array dan
dipasang pada banyak cells akan membuat Excel sibuk bekerja
mengkomputasi sesuatu, sehingga terkesan proses kalkulasi Excel
melambat. Cells atau kolom bantu bisa membantu mengurangi beban
kalkulasi Excel ini, sehingga proses kalkulasi bisa terkesan cepat
karena banyak rantai proses kalkulasi yang panjang telah berubah
menjadi pendek dengan bantuan cells atau kolom bantu.
Biasanya begitu...
;)
Andai sudah familiar dengan proses yang dilakukan oleh si Small( IF()
), maka array formula filtering adalah sekedar penambahan Index agar
bisa mengambil nilai di kolom tertentu pada record hasil Small( IF()
). Jadi, kalau small( if() ) menemukan urutan ke-1 yang diambil adalah
record dibaris ke-19, maka bagian Index adalah mengambil nilai data
suatu kolom yang dimiliki oleh record ke-19 itu.
Nah... nilai di kolom lain itu yang dibutuhkan bukan ?
Selamat mencoba.
Wassalamu'alaikum wr wb
Kid
2015-11-09 16:56 GMT+07:00 'Heri Pamungkas ( Gmail )'
[email protected] <mailto:[email protected]> [belajar-excel]
<[email protected] <mailto:[email protected]>>:
السَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Semangat pagi,.
Mungkin kalo yang ke dua :
Yang sama amati Error*#Num!* terjadi karena hasil Formula
yang harusnya bertipe Numeric tetapi ternyata bukan.
Kalau dilihat kembali Output dari Formula Small bertipe Numeric.
وَالسَّلَامُ عَلَيْكُمْ وَرَحْمَةُ اللهِ وَبَرَكَاتُهُ
Warm Regards,
On 09/11/2015 16:50, 'Mr. Kid' [email protected]
<mailto:[email protected]> [belajar-excel] wrote:
Ayo Pak DD n rekan lain...
Ada yang bersedia :
1. menjelaskan bunyi array formula :
=IFERROR(SMALL(IF($G$5=$B$6:$B$22;$C$6:$C$22);ROW(1:1));"")
2. kenapa kalau datanya bukan numerik jadi menghasilkan nilai
error value #NUM! ?
;)
Best Warm Regards,
Kid