Powered By Blogger

Selasa, 03 Januari 2012

Fungsi String/Teks Di Datasheet Excel

Dalam semua program, pengolahan string atau teks sangat diperlukan seperti bagaimana memanipulasi teks, mencari panjang teks, dsb. Bahkan bisa dikatakan kita tidak pernah bisa lepas dari urusan teks. Contoh mudahnya ketika kita menemui data teks seperti= '20080808' yang merupakan susunan tahun, bulan dan tanggal. Kita hanya ingin tahu tahun saja maka tentu saja kita harus memotong teks tersebut dan mengambil empat karakter paling depan sebagai tahunnya. Dalam Excel sendiri ada banyak sekali fungsi yang berhubungan dengan manipulasi teks mulai dari memotong teks, menghitung panjang teks, mengganti sebagian atau keseluruhan isi teks dan menggabungkan beberapa teks menjadi satu teks gabungan. Kali ini saya hanya membahas fungsi LEFT, RIGHT, MID, LEN dan CONCATENATE dan (mungkin) REPLACE, SUBSTITUTE.

Fungsi LEFT, RIGHT dan MID

FUNGSI LEFT
=LEFT(B2;4)  --atau--  =LEFT("20080808";4)
      -1-2-

=RIGHT(B2;2) --atau-- =RIGHT("20080808";2)
       -1-2-

=MID(B2;5;2) --atau-- =MID("20080808";5;2)
     -1-2-3
Dulu saya sempat bingung menggunakan ketiga fungsi ini, fungsi mana yang harus saya gunakan. Jika anda mengalami hal yang sama, semoga dengan pembahasan kita kali ini anda dapat menentukan fungsi tepat yang dapat digunakan. Konsep dasar fungsi LEFT dan RIGHT hampir sama, cuma perbedaannya terletak pada posisi karakter yang diambil. Fungsi LEFT akan menghasilkan satu atau lebih karakter paling awal (paling kiri) sesuai jumlah yang anda tentukan. Anda maksudkan atau tidak, fungsi LEFT akan selalu mengambil satu atau lebih karakter awal (paling kiri) suatu teks. Jika anda ingin karakter kedua atau lebih maka anda harus menggunakan fungsi MID dan bukan LEFT. Fungsi RIGHT hampir sama dengan LEFT tapi perbedaannya fungsi RIGHT mengambil satu atau lebih karakter dihitung dari akhir (paling kanan) teks. Jadi LEFT menghitung karakter dari kiri sedangkan RIGHT dihitung dari kanan. Ada dua parameter dalam fungsi LEFT dan RIGHT yaitu:
  • 1. Sel atau teks yang diuji adalah teks yang ingin anda potong
  • 2. Jumlah karakter yang ingin anda ambil dan harus lebih besar atau sama dengan 0. Jika anda memberikan nilai yang lebih besar dari panjang teks maka semua teks akan dihasilkan. Anda dapat mengacuhkan bagian ini dan akan dianggap 1.
Jika anda menginginkan memotong teks yang karakternya berada Tidak Diawal Teks maka anda harus menggunakan fungsi MID. Ada tiga bagian atau parameter dari fungsi ini. Pada contoh kode diatas fungsi MID akan menghasilkan bulan 08. Ketiga parameter tersebut adalah:
  • 1. Sel atau teks yang diuji adalah teks yang ingin anda potong
  • 2. Nilai mulai. adalah posisi karakter pertama pada teks yang ingin anda potong. Jika anda memberi nilai 1 maka fungsi ini akan hampir mirip dengan fungsi LEFT. Penghitungan karakter dimulai dari kiri dan karakter paling kiri adalah 1. Jika anda beri nilai yang lebih besar dari panjang teks maka MID akan menghasilkan "" (string kosong). Jika lebih kecil dari panjang teks tapi jika nilainya ditambah dengan jumlah karakter yang diambil melebihi panjang teks yang diuji maka MID akan menghasilkan karakter hingga akhir teks. Jika nilai mulai anda beri kurang dari 1 maka fungsi MID akan menghasilkan error #VALUE! dan jika negatif maka MID akan menghasilkan error #VALUE!.
  • 3. Jumlah karakter yang ingin anda ambil dalam teks.

Fungsi LEN dan Fungsi CONCATENATE

Ada kalanya kita ingin tahu berapa panjang suatu teks dan dengan fungsi LEN tujuan ini akan dapat kita capai. Mungkin ada sebagian dari anda yang menganggap fungsi ini tidak begitu penting tapi bagi saya fungsi ini justru sangat penting :). Misalkan kita memiliki tabel data dengan panjang teks yang tidak sama misalnya kumpulan nama siswa dan kita ingin memotong dua karakter terakhir saja (kira-kira buat apa ya?). Kita coba pada contoh berikut ini:
Pada gambar diatas anda dapat melihat bahwa panjang teks kode siswa tidak sama. Pada kolom nama siswa kita harus memotong teks dengan membuang tiga karakter terakhir. Kita tidak bisa menggunakan fungsi RIGHT karena fungsi RIGHT justru akan mengambil karakter yang harus kita buang. Karena itu perpaduan fungsi LEFT dan LEN akan dapat menyelesaikan hal tersebut. Dengan LEN kita dapat menghitung jumlah karakter yang ada kemudian jumlah karakter kita kurangi dengan 3 (jumlah karakter yang akan kita buang). Jadi kolom D3 akan kita isi dengan formula seperti berikut:
=LEFT(B3;LEN(B3)-3)
      -1 ---2-----
Sebagaimana fungsi LEFT yang kita bahas sebelumnya, ada dua bagian yaitu teks yang akan dipotong, kemudian jumlah karakter yang akan diambil. Jumlah karakter yang diambil ditentukan dengan menghitung total karakter dikurangi dengan 3, mudah kan?. Sekarang kita akan bahas kolom peringkat dimana saya akan mengisikan peringkat siswa diambil dari 2 karakter terakhir yang kemudian akan digabungkan dengan teks 'Peringkat' sehingga hasilnya menjadi seperti 'Peringkat 10'. Untuk mendapatkan angka peringkat kita bisa gunakan fungsi RIGHT dan kemudian digabungkan dengan kata 'Peringkat' menggunakan fungsi CONCATENATE. Jadi sell F3 akan kita isi dengan formula seperti berikut:
=CONCATENATE("Peringkat";" ";RIGHT(B3;2)) --- atau --- =CONCATENATE("Peringkat ";RIGHT(B3;2))
Dan inilah hasil (sementara)nya:

Fungsi SUBSTITUTE

Anda mungkin protes masak ada istilah Peringkat 01? harusnya kan Peringkat 1!. Padahal saya berdoa agar saya bisa melupakan protes anda tapi untunglah ada fungsi SUBSTITUTE yang membantu saya menyelesaikan permasalahan munculnya angka 0 di depan angka 1. Dengan fungsi SUBSTITUTE kita akan mengganti semua teks/angka 0 dengan "" alias string kosong. Sekarang kita coba ganti formula di sell F3 dengan fungsi berikut ini:
=CONCATENATE("Peringkat ";SUBSTITUTE(RIGHT(B3;2);"0";""))
                                     -----1----- -2- -3
Fungsi SUBSTITUTE memiliki tiga bagian atau parameter yaitu: 1. Teks yang diuji, 2. Karakter yang akan diganti dan 3. Karakter penggantinya. Tidak terbatas hanya mengganti satu karakter tapi bahkan anda dapat mengganti kata atau beberapa kata yang diganti dengan kata yang lain. Misalkan ada teks: 'Pacar baru' maka kata 'baru' bisa diganti dengan kata 'lama' menggunakan fungsi: =SUBSTITUTE("Pacar baru";"baru";"lama"). Setelah kita ganti formula di sell F3 dengan fungsi yang baru tentu saja hasilnya akan sesuai dengan yang kita inginkan. Sell F3 akan berisi teks 'Peringkat 1'. Tapi....., setelah anda copykan rumus kebawah, anda pasti terkejut dengan hasil di peringkat 10 karena sang peringkat 10 ikut-ikutan jadi peringkat 1 :). Kita butuh bantuan fungsi IF dan LEFT dan terus terang formulanya akan kelihatan lebih 'ribet'.
=IF(LEFT(RIGHT(B3;2);1)="0";CONCATENATE("Peringkat ";SUBSTITUTE(RIGHT(B3;2);"0";""));
CONCATENATE("Peringkat ";RIGHT(B3;2)))
UNTUK BAHAN PRAKTEK KELAS X5-SD-X-8 SILAHKAN DOWNLOAD DISINI
UNTUK BAHAN PRAKTEK KELAS XI-IPA SILAHKAN DOWNLOAD DISINI

SEKIAN DAN TERIMA KASIH