Untuk melakukan insert row , dengan cara biasa adalah sbb :
1. Block Row
2. Masuk ke Insert
3. Pilih Row
Untuk melakukan delete row , dengan cara biasa adalah sbb :
1. Block Row
2. Klik Kanan Mouse
3. Pilih Delete
Begitu juga dengan column....
Untuk mempercepat pekerjaan anda, biasanya kita bisa menggunakan short cut
Short cut untuk menambah baris :
1. Shift + Space --> Untuk block row
2. Alt + i + e
atau bisa juga dengan :
1. Shift + Space
2. Ctrl Shift + (Control Shift Plus)
Short cut untuk menghapus baris :
1. Shift + Space
2. Ctrl - (Control Minus)
Untuk block column ganti Shift + Space menjadi Ctrl + Space
Semoga membantu
Rabu, 01 Desember 2010
Convert Number To Time
Terkadang kita memerlukan waktu cukup lama untuk mengentry data dalam format time, misal 09:45. Salah satu solusi untuk mempercepatnya adalah mengentry dengan menggunakan format number, sehingga entry datanya adalah 9.45.
Tetapi perlu diingat bahwa 9.45 tidak sama dengan 9:45, nah bagaimana supaya entry dalam format number tersebut bisa menampilkan nilai yang sama dalam bentuk format time.
Perlu diketahui bahwa setiap angka 1 dalam format number adalah sama dengan 1/24 format time, dan angka 0.1 dalam format number sama dengan 0.1/24/6*10
Sebagai contoh , misal anda ketikkan 6.25 , maka untuk mengubah ke dalam format time 6:25 anda harus mengkonversi nilai 6.25 tersebut menjadi (6/24)+(0.25/24/6*10).
Untuk formulanya adalah sbb :
Misal nilai 6.25 berada di cell D5, dan hasil yang diinginkan ada di cell D6
=((D5-ROUND(MOD(D5,1),2))+(ROUND(MOD(D5,1),2)/6*10))/24
Jangan lupa untuk mengubah format cell D6 dengan format time
Semoga membantu
Tetapi perlu diingat bahwa 9.45 tidak sama dengan 9:45, nah bagaimana supaya entry dalam format number tersebut bisa menampilkan nilai yang sama dalam bentuk format time.
Perlu diketahui bahwa setiap angka 1 dalam format number adalah sama dengan 1/24 format time, dan angka 0.1 dalam format number sama dengan 0.1/24/6*10
Sebagai contoh , misal anda ketikkan 6.25 , maka untuk mengubah ke dalam format time 6:25 anda harus mengkonversi nilai 6.25 tersebut menjadi (6/24)+(0.25/24/6*10).
Untuk formulanya adalah sbb :
Misal nilai 6.25 berada di cell D5, dan hasil yang diinginkan ada di cell D6
=((D5-ROUND(MOD(D5,1),2))+(ROUND(MOD(D5,1),2)/6*10))/24
Jangan lupa untuk mengubah format cell D6 dengan format time
Semoga membantu
Senin, 22 November 2010
Max Column and Row for Excel 2007
Just share saja, berdasarkan informasi yang ada, untuk maksimal baris dan kolom untuk microsoft excel 2007 adalah 16 ribu kolom dan lebih dari 1 juta baris...
Jadi gak perlu pusing lagi jika data anda sudah mencapai lebih dari 65 ribu baris...langsung ganti aja excel anda dengan versi 2007...
Jadi gak perlu pusing lagi jika data anda sudah mencapai lebih dari 65 ribu baris...langsung ganti aja excel anda dengan versi 2007...
Jumat, 19 November 2010
Sumproduct Include Non Number Cell Value
Jika anda mempunyai table dengan format seperti pada contoh dibawah
Bisa anda lihat bahwa pada baris ke 7 adalah header table
Nah jika anda cukup "iseng", dan ingin melakukan sumproduct berkondisi pada table tersebut (data beserta headernya), maka :
misal: Name= ANDY
=SUMPRODUCT((C7:C11="ANDY")*E7:E11*F7:F11)
Hasilnya adalah #VALUE
Nah bagaimana cara untuk menghindari #VALUE ???
Caranya adalah sbb :
=SUMPRODUCT(--(C7:C11="ANDY"),(E7:E11),(F7:F11))
Jangan gunakan '*' sebagai operator AND, gunakan koma (,)
Perhatikan sebelum (C7:C11="ANDY") ada tanda minus dua kali "--"
Artinya "--" apa ya ?
Tanda tersebut digunakan untuk "memaksa" hasil boolean (TRUE atau FALSE) menjadi numeric (1 atau 0)
Bisa juga dengan menggunakan fungsi berikut :
=SUMPRODUCT((C7:C11="ANDY")*1,(E7:E11),(F7:F11))
=SUMPRODUCT((C8:C12="ANDY")+0,(E8:E12),(F8:F12))
Thanks
Bisa anda lihat bahwa pada baris ke 7 adalah header table
Nah jika anda cukup "iseng", dan ingin melakukan sumproduct berkondisi pada table tersebut (data beserta headernya), maka :
misal: Name= ANDY
=SUMPRODUCT((C7:C11="ANDY")*E7:E11*F7:F11)
Hasilnya adalah #VALUE
Nah bagaimana cara untuk menghindari #VALUE ???
Caranya adalah sbb :
=SUMPRODUCT(--(C7:C11="ANDY"),(E7:E11),(F7:F11))
Jangan gunakan '*' sebagai operator AND, gunakan koma (,)
Perhatikan sebelum (C7:C11="ANDY") ada tanda minus dua kali "--"
Artinya "--" apa ya ?
Tanda tersebut digunakan untuk "memaksa" hasil boolean (TRUE atau FALSE) menjadi numeric (1 atau 0)
Bisa juga dengan menggunakan fungsi berikut :
=SUMPRODUCT((C7:C11="ANDY")*1,(E7:E11),(F7:F11))
=SUMPRODUCT((C8:C12="ANDY")+0,(E8:E12),(F8:F12))
Thanks
Sumproduct with (multi) condition
Jika anda mempunyai format data seperti pada contoh , dan ingin melakukan perhitungan sumproduct sesuai dengan nama masing masing :
=SUMPRODUCT(E8:E9,F8:F9)+SUMPRODUCT(E11,F11)
atau
=SUMPRODUCT(E8:E9,F8:F9)+(E11*F11)
Ribet ???
Nah cara praktisnya adalah dengan menggunakan condition pada sumproduct
=SUMPRODUCT((C8:C11="ANDY")*E8:E11*F8:F11)
Tanda '*' disini bisa diartikan sebagai operator AND
(cara baca : lakukan sumproduct untuk baris C8 hingga C11 yang nilainya sama dengan "ANDY", maka selain "ANDY" akan dianggap sebagai 0)
Bagaimana jika anda ingin melakukan sumproduct lebih dari satu kondisi, misal Nama ANDY dengan Class A
=SUMPRODUCT((C8:C11="ANDY")*(D8:D11="A")*E8:E11*F8:F11)
Thanks
Bisa saja anda lakukan secara manual, misal untuk ANDY
=(E8*F8)+(E9*F9)+(E11*F11)
=(3*1)+(4*2)+(5*3)
Hasilnya adalah 26
Dengan menggunakan sumproduct
=SUMPRODUCT(E8:E9,F8:F9)+SUMPRODUCT(E11,F11)
atau
=SUMPRODUCT(E8:E9,F8:F9)+(E11*F11)
Ribet ???
Nah cara praktisnya adalah dengan menggunakan condition pada sumproduct
=SUMPRODUCT((C8:C11="ANDY")*E8:E11*F8:F11)
Tanda '*' disini bisa diartikan sebagai operator AND
(cara baca : lakukan sumproduct untuk baris C8 hingga C11 yang nilainya sama dengan "ANDY", maka selain "ANDY" akan dianggap sebagai 0)
Bagaimana jika anda ingin melakukan sumproduct lebih dari satu kondisi, misal Nama ANDY dengan Class A
=SUMPRODUCT((C8:C11="ANDY")*(D8:D11="A")*E8:E11*F8:F11)
Thanks
Rabu, 03 November 2010
SUM From Multiple Sheet
Jika saya mempunyai 100 sheet (Sheet1 s/d Sheet100), bagaimana formula untuk menjumlahkan salah satu cell dari 100 sheet tersebut dalam sheet yang lain (Summary) ?
Caranya cukup mudah :
1. Ketikan =SUM(
2. Kemudian tahan tombol Shift
3. Klik sheet paling kiri (Sheet1)
4. Sambil tetap menahan Shift, klik sheet paling kanan (Sheet100)
Pada saat anda klik Sheet1 dan Sheet100, fokus sheet masih sheet Summary
5. Kemudian klik pada cell yang akan dijumlahkan (Misal :A1)
6. Formula anda akan terlihat sbb :
=SUM(Sheet1:Sheet100!A1)
Syarat yang harus diperhatikan adalah :
1. Pastikan semua nilai yang akan di jumlah berada pada cell yang sama, dalam contoh adalah A1.
2. Sheet yang akan dijumlahkan adalah Sheet yang berada di dalam range Sheet1 hingga Sheet100.
Jika sheet100 yang awalnya berada di posisi paling kanan anda geser (drag) ke arah kiri (misal sebelah kiri Sheet95, maka yang akan dijumlahkan adalah Sheet1 s/d Sheet94 ditambah Sheet100 itu sendiri.
Semoga membantu....
Caranya cukup mudah :
1. Ketikan =SUM(
2. Kemudian tahan tombol Shift
3. Klik sheet paling kiri (Sheet1)
4. Sambil tetap menahan Shift, klik sheet paling kanan (Sheet100)
Pada saat anda klik Sheet1 dan Sheet100, fokus sheet masih sheet Summary
5. Kemudian klik pada cell yang akan dijumlahkan (Misal :A1)
6. Formula anda akan terlihat sbb :
=SUM(Sheet1:Sheet100!A1)
Syarat yang harus diperhatikan adalah :
1. Pastikan semua nilai yang akan di jumlah berada pada cell yang sama, dalam contoh adalah A1.
2. Sheet yang akan dijumlahkan adalah Sheet yang berada di dalam range Sheet1 hingga Sheet100.
Jika sheet100 yang awalnya berada di posisi paling kanan anda geser (drag) ke arah kiri (misal sebelah kiri Sheet95, maka yang akan dijumlahkan adalah Sheet1 s/d Sheet94 ditambah Sheet100 itu sendiri.
Semoga membantu....
Rabu, 27 Oktober 2010
Penggunaan Array
Sebagai tambahan informasi pada tulisan saya sebelumnya yaitu tentang SumIf with multiple condition , caranya adalah dengan memanfaatkan array. Nah cara ini tidak hanya berlaku untuk SUM, tetapi anda juga bisa mengaplikasikan dengan fungsi-fungsi yang lain seperti MAX, MIN, Average, dll
Dan yang perlu diingat bahwa penggunaan array sebaiknya seminimal mungkin, karena terlalu banyak array dalam worksheet anda akan mempengaruhi performa excel anda. Jadi gunakan cara ini jika memang fungsi standard di excel sudah mencukupi kebutuhan anda....
Dan yang perlu diingat bahwa penggunaan array sebaiknya seminimal mungkin, karena terlalu banyak array dalam worksheet anda akan mempengaruhi performa excel anda. Jadi gunakan cara ini jika memang fungsi standard di excel sudah mencukupi kebutuhan anda....
Selasa, 26 Oktober 2010
SumIf with multiple condition
Sumif pada excel hanya bisa digunakan untuk 1 kondisi saja, misalnya ">2" atau "=0".
Syntax SumIf : "=sumif(range, criteria, [sum_range])"
Bagaimana jika kita ingin melakukan sumif tetapi dengan menggunakan lebih dari 1 kondisi ?
Solusinya adalah kita bisa memanfaatkan array, bagi yang belum mengerti tentang istilah array, artinya adalah sekumpulan/himpunan data.
Himpunan data bisa digambarkan sebagai berikut :
{1,2,3,4,5,6,7,8,9,0}
Syntac untuk menggunakan sumif dengan array sedikit berbeda dengan sumif pada umumnya.
Syntac untuk Sumif dengan multi kondisi adalah sbb :
=Sum(if(filter,if(filter,if(filter,[sum_range]))))
akhiri dengan menekan tombol Shift + Ctrl + Enter
Jika penekanan tombol sudah benar maka hasilnya akan tampak pada kolom formula sbb :
{=Sum(if(filter,if(filter,if(filter,[sum_range]))))}
contoh untuk pengisian filter adalah sbb:
$A1:$A10 > 5
(Cara baca : dalam cell A1 hingga A10 manakah yang nilainya lebih besar dari 5)
Jika kita lakukan evaluate formula maka hasilnya akan nampak sbb :
{False,False,False,False,False,False,True,True,True,True}
Note : Anda boleh saja mengartikan False = 0 dan True = 1
Dan sum_range yang akan masuk dalam perhitungan adalah posisi nilai , dimana semua filternya menghasilkan True, jika ada satu saja dari filter pada posisi nilai tersebut menghasilkan False, maka nilai tersebut tidak akan masuk dalam perhitungan.
Misal :
Kolom A1:A6 --> Data : {1,2,3,4,5,6}
Filter 1 : Data >3 --> Hasilnya adalah : {False,False,False,True,True,True}
Filter 2 : Data <6 --> Hasilnya adalah : {True,True,True,True,True,False}
Maka jika diformulakan : "=Sum(if(A1:A6>3,if(A1:A6<6, A1:A6)))"
Hasilnya adalah 9
Mengapa bisa 9 ? karena posisi array yang semuanya menghasilkan True ada pada posisi ke 4 dan 5
Semoga membantu
Thanks
Syntax SumIf : "=sumif(range, criteria, [sum_range])"
Bagaimana jika kita ingin melakukan sumif tetapi dengan menggunakan lebih dari 1 kondisi ?
Solusinya adalah kita bisa memanfaatkan array, bagi yang belum mengerti tentang istilah array, artinya adalah sekumpulan/himpunan data.
Himpunan data bisa digambarkan sebagai berikut :
{1,2,3,4,5,6,7,8,9,0}
Syntac untuk menggunakan sumif dengan array sedikit berbeda dengan sumif pada umumnya.
Syntac untuk Sumif dengan multi kondisi adalah sbb :
=Sum(if(filter,if(filter,if(filter,[sum_range]))))
akhiri dengan menekan tombol Shift + Ctrl + Enter
Jika penekanan tombol sudah benar maka hasilnya akan tampak pada kolom formula sbb :
{=Sum(if(filter,if(filter,if(filter,[sum_range]))))}
contoh untuk pengisian filter adalah sbb:
$A1:$A10 > 5
(Cara baca : dalam cell A1 hingga A10 manakah yang nilainya lebih besar dari 5)
Jika kita lakukan evaluate formula maka hasilnya akan nampak sbb :
{False,False,False,False,False,False,True,True,True,True}
Note : Anda boleh saja mengartikan False = 0 dan True = 1
Dan sum_range yang akan masuk dalam perhitungan adalah posisi nilai , dimana semua filternya menghasilkan True, jika ada satu saja dari filter pada posisi nilai tersebut menghasilkan False, maka nilai tersebut tidak akan masuk dalam perhitungan.
Misal :
Kolom A1:A6 --> Data : {1,2,3,4,5,6}
Filter 1 : Data >3 --> Hasilnya adalah : {False,False,False,True,True,True}
Filter 2 : Data <6 --> Hasilnya adalah : {True,True,True,True,True,False}
Maka jika diformulakan : "=Sum(if(A1:A6>3,if(A1:A6<6, A1:A6)))"
Hasilnya adalah 9
Mengapa bisa 9 ? karena posisi array yang semuanya menghasilkan True ada pada posisi ke 4 dan 5
Semoga membantu
Thanks
Senin, 25 Oktober 2010
Multi Condition for Conditional Formatting
Conditional Formatting adalah feature yang disediakan oleh excel untuk membantu kita dalam pembacaan data. Dengan conditional formatting ini, banyak hal yang bisa kita lakukan, misalnya mengubah warna cell/font jika nilai dalam cell tersebut sesuai dengan ketentuan
Untuk mengakses menu conditional Formating lihat pada gambar dibawah :
Sebagai contoh, jika kita ingin mengetahui jumlah pengunjung yang lebih dari 400, lakukan :
Untuk mengakses menu conditional Formating lihat pada gambar dibawah :
Akan muncul form berikut
1. Block kolom jumlah pengunjung
2. Masuk dalam menu conditional formatting
3. Pada Kolom 1 isi dengan Cell Value Is
4. Pada Kolom kedua isi dengan Greater Than
5. Pada kolom ketiga isikan angka 400
6. Kemudian tekan tombol Format
7. Pilih tab Patterns, kemudian pilih warna merah
8. Sebagai gambaran bisa dilihat pada image dibawah :
Hasil dari conditional formating bisa di lihat dibawah :
Nah, sekarang bagaimana caranya untuk membuat conditional formatting lebih dari 1 syarat ?
Misalnya yang diminta adalah tandai data Bulan July dengan Tahun 2010
Caranya adalah sbb:
1. Pilih Formula Is2. Isikan formula seperti pada gambar
=AND($B74=$B$72,$C74=$C$72)
Rabu, 20 Oktober 2010
Membuat Data Validation List dari Sheet Lain
Seringkali kita membuat Validation List pada beberapa sheet dengan isi yang sama, tetapi pada Excel (2003) kita tidak bisa select source list pada sheet yang berbeda.
Ada 2 cara untuk membuat Data Validation List yang sourcenya berasal dari Sheet yang lain.
1. Menggunakan Define
a. Select Range yang akan dibuat List (Source)
b. Pilih Menu Insert -> Name -> Define
c. Isikan Names In Workbook, Misal : DataKu
d. Pindah ke Sheet Lain
e. Pilih Cell yang akan di buat List
f. Kemudian pilih Menu Data -> Validation
g. Pada Kolom Allow pilih List
h. Kemudian pada kolom Source isikan =DataKu
2. Menggunakan Fungsi INDIRECT
Jika kita asumsikan range A1:A10 adalah source yang terletak pada Sheet1. Maka untuk membuat Data Validation List pada Sheet2 adalah sebagai berikut :
a. Pilih Cell yang akan di buat List
b. Kemudian pilih Menu Data -> Validation
c. Pada Kolom Allow pilih List
d. Kemudian pada kolom Source isikan =INDIRECT("Sheet1!$A$1:$A$10")
Untuk Indirect terdapat kelemahan pada saat nama Sheet Source di ubah, sehingga harus mengubah Data Validation Source pada Cell yang di setting sebagai Data Validation List
Misal Nama Sheet awal adalah Sheet1 , fungsi indirectnya adalah =INDIRECT("Sheet1!$A$1:$A$10")
Pada saat nama sheet1 diubah menjadi Master , maka fungsinya harus diubah menjadi =INDIRECT("Master!$A$1:$A$10")
Semoga bermanfaat....
Ada 2 cara untuk membuat Data Validation List yang sourcenya berasal dari Sheet yang lain.
1. Menggunakan Define
a. Select Range yang akan dibuat List (Source)
b. Pilih Menu Insert -> Name -> Define
c. Isikan Names In Workbook, Misal : DataKu
d. Pindah ke Sheet Lain
e. Pilih Cell yang akan di buat List
f. Kemudian pilih Menu Data -> Validation
g. Pada Kolom Allow pilih List
h. Kemudian pada kolom Source isikan =DataKu
2. Menggunakan Fungsi INDIRECT
Jika kita asumsikan range A1:A10 adalah source yang terletak pada Sheet1. Maka untuk membuat Data Validation List pada Sheet2 adalah sebagai berikut :
a. Pilih Cell yang akan di buat List
b. Kemudian pilih Menu Data -> Validation
c. Pada Kolom Allow pilih List
d. Kemudian pada kolom Source isikan =INDIRECT("Sheet1!$A$1:$A$10")
Untuk Indirect terdapat kelemahan pada saat nama Sheet Source di ubah, sehingga harus mengubah Data Validation Source pada Cell yang di setting sebagai Data Validation List
Misal Nama Sheet awal adalah Sheet1 , fungsi indirectnya adalah =INDIRECT("Sheet1!$A$1:$A$10")
Pada saat nama sheet1 diubah menjadi Master , maka fungsinya harus diubah menjadi =INDIRECT("Master!$A$1:$A$10")
Semoga bermanfaat....
Fungsi INDIRECT
Fungsi INDIRCT berfungsi untuk mengubah text menjadi formula.
Sebagai contoh :
Cell A1 diisi dengan angka 5
kemudian cell A2 diisi dengan =INDIRECT("A1")
maka hasilnya adalah angka 5
Fungsi indirect juga bisa digunakan untuk lintas sheet
misal =INDIRECT("Sheet1!A1")
Kelemahan fungsi INDIRECT adalah jika digunakan cukup banyak dalam satu file excel, maka kinerja excel akan sangat lambat, hal ini disebabkan pada saat kita melakukan perhitungan di excel, maka akan dijalankan secara otomatis autocalculation.
Fungsi INDIRECT ini bisa juga disebut sebagai volatile function
Selain INDIRECT ada beberapa volatile function antara lain :
CELL()
OFFSET()
TODAY()
NOW()
INFO()
RAND()
Untuk menghindari penurunan performance, sebaiknya seminimal mungkin menggunakan volatile function tersebut
Thanks
Ferry Setiawan
Sebagai contoh :
Cell A1 diisi dengan angka 5
kemudian cell A2 diisi dengan =INDIRECT("A1")
maka hasilnya adalah angka 5
Fungsi indirect juga bisa digunakan untuk lintas sheet
misal =INDIRECT("Sheet1!A1")
Kelemahan fungsi INDIRECT adalah jika digunakan cukup banyak dalam satu file excel, maka kinerja excel akan sangat lambat, hal ini disebabkan pada saat kita melakukan perhitungan di excel, maka akan dijalankan secara otomatis autocalculation.
Fungsi INDIRECT ini bisa juga disebut sebagai volatile function
Selain INDIRECT ada beberapa volatile function antara lain :
CELL()
OFFSET()
TODAY()
NOW()
INFO()
RAND()
Untuk menghindari penurunan performance, sebaiknya seminimal mungkin menggunakan volatile function tersebut
Thanks
Ferry Setiawan
Senin, 18 Oktober 2010
Disable Cut, Copy, Paste
Jika anda ingin data pada worksheet anda tidak bisa dicut, copy dan paste, caranya sangat mudah...
Tambahkan macro berikut pada worksheet anda :
Procedure yang pertama berguna untuk membatalkan perintah klik kanan pada mouse
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
End Sub
Procedure yang kedua berguna untuk membatalkan perintah cut atau copy
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.CutCopyMode = False
End Sub
Mudah kan ?
Semoga bermanfaat...
Tambahkan macro berikut pada worksheet anda :
Procedure yang pertama berguna untuk membatalkan perintah klik kanan pada mouse
Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean)
Cancel = True
End Sub
Procedure yang kedua berguna untuk membatalkan perintah cut atau copy
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.CutCopyMode = False
End Sub
Mudah kan ?
Semoga bermanfaat...
Fungsi MATCH dalam VLOOKUP
Seringkali dalam membuat suatu perhitungan , kita menggunakan fungsi VLOOKUP untuk mendapatkan nilai sesuai dengan lookup_value yang kita kehendaki
Pada column Result hasilnya menjadi kacau, hal ini disebabkan karena Column_Index bersifat statis, tidak bisa mengikuti perubahan column.
Hasilnya sama dengan sebelum di lakukan insert column
Syntax : VLOOKUP(lookup_value, array_date,column_index,[range_lookup])
Lookup_Value : Nilai yang akan dicari posisinya
Array_Data : Array (sekumpulan) data
Column_Index : Nomor kolom berdasarkan array_data
Range_Lookup :
-. Jika diisi dengan True, maka hasilnya akan sesuai dengan lookup_value, tetapi jika lookup_value tidak ditemukan dalam array_data maka hasilnya adalah nilai terbesar yang paling mendekati dengan lookup_value yang akan muncul
-. Jika diisi dengan False, maka hasilnya akan sesuai dengan lookup_value, tetapi jika lookup_value tidak ditemukan dalam array_data maka hasilnya adalah #N/A
Array_Data : Array (sekumpulan) data
Column_Index : Nomor kolom berdasarkan array_data
Range_Lookup :
-. Jika diisi dengan True, maka hasilnya akan sesuai dengan lookup_value, tetapi jika lookup_value tidak ditemukan dalam array_data maka hasilnya adalah nilai terbesar yang paling mendekati dengan lookup_value yang akan muncul
-. Jika diisi dengan False, maka hasilnya akan sesuai dengan lookup_value, tetapi jika lookup_value tidak ditemukan dalam array_data maka hasilnya adalah #N/A
Bagaimana jika dilakukan insert column pada column C ?
hasilnya adalah sebagai berikut :
Pada column Result hasilnya menjadi kacau, hal ini disebabkan karena Column_Index bersifat statis, tidak bisa mengikuti perubahan column.
Bagaimana solusinya ?
Solusinya kita bisa menggunakan Fungsi MATCH di dalam VLOOKUP
Setelah di lakukan insert Column C, hasilnya adalah sebagai berikut
Hasilnya sama dengan sebelum di lakukan insert column
Semoga bermanfaat...
Fungsi MATCH
Fungsi MATCH berfungsi untuk mendapatkan posisi suatu nilai dalam suatu array.
Syntax : MATCH(Lookup_Value, Array_Data, Match_Type)
Lookup_Value : Nilai yang akan dicari posisinya
Array_Data : Array (sekumpulan) data
Array_Data : Array (sekumpulan) data
Match Type :
-. Jika 1, hasilnya adalah posisi dimana Lookup_Value berada, atau posisi nilai terbesar yang paling mendekati dengan Lookup_Value, syaratnya adalah array_data harus berurutan (kecil ke besar)
-. Jika 0, hasilnya adalah posisi dimana lookup_value berada, dan datanya tidak harus berurutan
-. Jika -1, hasilnya adalah posisi dimana Lookup_Value berada, atau posisi nilai terkecil yang paling mendekati dengan Lookup_Value, syaratnya adalah array_data harus berurutan (besar ke kecil)
-. Jika tidak diisi maka secara default akan dianggap 1
Contoh
Thanks
Ferry Setiawan
Jumat, 15 Oktober 2010
Fungsi INDEX
Fungsi INDEX dalam excel dapat kita gunakan untuk mendapatkan suatu nilai dari baris dan kolom yang kita kehendaki.
ntax:
INDEX(array, row, column)
array : adalah range untuk data , dalam contoh ini adalah di column B
row : adalah baris data dari array
column : adalah kolom data dari array, dalam contoh dituliskan 1, karena array data hanya 1 kolom (perhitungan nomor kolom tidak dihitung dari kolom A, tetapi dimulai berdasarkan kolom dalam range data, dalam contoh adalah kolom B)
ntax:
INDEX(array, row, column)
array : adalah range untuk data , dalam contoh ini adalah di column B
row : adalah baris data dari array
column : adalah kolom data dari array, dalam contoh dituliskan 1, karena array data hanya 1 kolom (perhitungan nomor kolom tidak dihitung dari kolom A, tetapi dimulai berdasarkan kolom dalam range data, dalam contoh adalah kolom B)
Mengubah Baris Menjadi Kolom
Bagaimana cara untuk mengubah tampilan row data menjadi column data ?
Ada beberapa cara :
1. Manual, yaitu dengan menggunakan copy & paste special ,aktifkan option transpose
2. Formula, misal data yang ada berada dalam range (A1:A5), kemudian akan di mengubah menjadi column data (misal range(B1:F1)), lakukan langkah langkah berikut :
Ada beberapa cara :
1. Manual, yaitu dengan menggunakan copy & paste special ,aktifkan option transpose
2. Formula, misal data yang ada berada dalam range (A1:A5), kemudian akan di mengubah menjadi column data (misal range(B1:F1)), lakukan langkah langkah berikut :
- Block range(B1:F1)
- ketikkan formula "=transpose(B1:F1)"
- tahan Ctrl+Shift
- masih dalam keadaan menekan tombol Ctrl+Shift, tekan tombol enter
Jumat, 30 April 2010
Set Error Formula Result To Zero Value
Untuk mengubah nilai error (#N/A, #DIV/0!, dll) pada suatu formula menjadi 0 (nol) , biasa kita menambahkan fungsi IF pada formula.
Contoh :
Diketahui : A1=10, B1=0
Formula : =A1/B1
Result : #DIV/0!
Untuk mengubah nilai error menjadi 0, maka Formulanya kita ubah menjadi :
=IF(B1=0,0,A1/B1)
Maka hasilnya adalah 0
Bayangkan jika formula anda cukup panjang, maka dengan ditambahkannya fungsi IF seperti pada contoh, panjang formula anda akan menjadi 2 kali lipat, dan ini tentunya akan mempersulit anda dalam pengecekan formula jika ada kesalahan.
Contoh Formula :
=IF(A49="",0,SUM(B60:C60)/VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE))
Jika menggunakan IF akan menjadi :
=IF(VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE))=0,0,IF(A49="",0,SUM(B60:C60)/VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE)))
Bagaimana cara untuk mempermudah ?
Cara untuk mempermudah adalah dengan memanfaatkan macro
Buat satu module , kemudian isi dengan code berikut :
Function SetToZero(vString As Variant) As Double
On Error Resume Next
If IsEmpty(vString) Or Len(vString) = 0 Then
SetToZero = 0
GoTo akhir:
Else
SetToZero = vString
GoTo akhir:
End If
If vString = CVErr(xlErrDiv0) Or _
vString = CVErr(xlErrNA) Or _
vString = CVErr(xlErrName) Or _
vString = CVErr(xlErrNull) Or _
vString = CVErr(xlErrNum) Or _
vString = CVErr(xlErrRef) Or _
vString = CVErr(xlErrValue) Then
SetToZero = 0
GoTo akhir:
Else
SetToZero = vString
GoTo akhir:
End If
akhir:
End Function
Kemudian ubah formula anda menjadi :
=SetToZero(A1/B1)
Kemudian rasakan hasilnya....
Contoh :
Diketahui : A1=10, B1=0
Formula : =A1/B1
Result : #DIV/0!
Untuk mengubah nilai error menjadi 0, maka Formulanya kita ubah menjadi :
=IF(B1=0,0,A1/B1)
Maka hasilnya adalah 0
Bayangkan jika formula anda cukup panjang, maka dengan ditambahkannya fungsi IF seperti pada contoh, panjang formula anda akan menjadi 2 kali lipat, dan ini tentunya akan mempersulit anda dalam pengecekan formula jika ada kesalahan.
Contoh Formula :
=IF(A49="",0,SUM(B60:C60)/VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE))
Jika menggunakan IF akan menjadi :
=IF(VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE))=0,0,IF(A49="",0,SUM(B60:C60)/VLOOKUP(Setting!$C$3,Setting!$B$25:$C$26,2,FALSE)*VLOOKUP($B$3,Setting!$B$6:$L$8,COLUMN()-3,FALSE)))
Bagaimana cara untuk mempermudah ?
Cara untuk mempermudah adalah dengan memanfaatkan macro
Buat satu module , kemudian isi dengan code berikut :
Function SetToZero(vString As Variant) As Double
On Error Resume Next
If IsEmpty(vString) Or Len(vString) = 0 Then
SetToZero = 0
GoTo akhir:
Else
SetToZero = vString
GoTo akhir:
End If
If vString = CVErr(xlErrDiv0) Or _
vString = CVErr(xlErrNA) Or _
vString = CVErr(xlErrName) Or _
vString = CVErr(xlErrNull) Or _
vString = CVErr(xlErrNum) Or _
vString = CVErr(xlErrRef) Or _
vString = CVErr(xlErrValue) Then
SetToZero = 0
GoTo akhir:
Else
SetToZero = vString
GoTo akhir:
End If
akhir:
End Function
Kemudian ubah formula anda menjadi :
=SetToZero(A1/B1)
Kemudian rasakan hasilnya....
Langganan:
Postingan (Atom)