Jumat, 16 November 2018

Fungsi DATENIK untuk membuat Tanggal Lahir dari NIK

Rumus Excel [.] com - Untuk menampilkan atau membuat tanggal lahir dari NIK menggunakan rumus excel, sudah pernah saya bahas di blog rumus excel ini, yaitu dengan menggunakan fungsi MID.

Serupa namun tak sama, kali ini saya akan bagikan kembali tutorial tentang cara membuat tanggal lahir dari NIK, bedanya adalah tidak lagi menggunakan fungsi MID namun menggunakan fungsi buatan (User Defined Function) yang saya beri nama Fungsi DATENIK.

Dan berikut contoh penggunaan fungsi DATENIK.

Fungsi DATENIK Tanggal Lahir dari NIK

Dari contoh yang terlihat dari gambar di atas, penggunaan fungsi DATENIK sangat simpel, cukup ketik:
=DATENIK ( NIK / Referensi Sel yg berisi NIK; Tipe Data/Tanggal )
Tapi jangan buru-buru mencoba di Aplikasi Office Excel Anda, karena hasilnya pasti error #NAME? hal ini terjadi karena fungsi DATENIK ini memang tidak tersedia di daftar Fungsi Excel.

Dan berikut langkah-langkah untuk membuat fungsi DATENIK di VBA Excel:
  1. Buka Aplikasi Microsoft Visual Basic for Applications, bisa melalui Tab Developer atau dengan menggunakan kombinasi tombol Alt + F11
  2. Tambahkan Module baru untuk nantinya buat menempatkan script VBA-nya.
  3. Memasukkan Module VBA Excel
  4. Pada Module Code Masukkan script untuk fungsi DATENIK berikut ini:
    Function DATENIK(NIK As Variant, Tipe As Integer)
     Dim tanggal, bulan, tahun As Integer
     Dim d As Variant, TipeDate As String
       
     tanggal = Mid(NIK, 7, 2)
     bulan = Mid(NIK, 9, 2)
     tahun = Mid(NIK, 11, 2)
       
       'Validasi Tanggal -40 untuk perempuan
        If tanggal > 40 Then tanggal = tanggal - 40
       
       'Menambahkan awalan 19 / 20 pada tahun
        If (tahun + 2000) > Year(Now()) Then
          tahun = 1900 + tahun
        Else
          tahun = 2000 + tahun
        End If
       
       'Memilih Tipe Date
       Select Case Tipe
         Case 0: TipeDate = "dd/mm/yyyy"
         Case 1: TipeDate = "dd-mm-yyyy"
         Case 2: TipeDate = "[$-421]dd mmm yyyy"
         Case 3: TipeDate = "[$-421]dd mmmm yyyy"
       End Select
       
     d = tanggal & "/" & bulan & "/" & tahun
       
     'Tampilkan pesan jika NIK tidak Valid
     If Len(NIK) <> 16 Then
        DATENIK = "Data NIK tidak Valid"
     Else
        DATENIK = Format(d, TipeDate)
     End If
    End Function
    
    Konsep dari fungsi DATENIK ini sama dengan menggunakan beberapa fungsi MID seperti yang pernah saya jelaskan pada artikel Rumus Excel Membuat Tanggal Lahir dari NIK, diantaranya dengan mengurangi angka 40 untuk tanggal yang lebih dari 40 dan menambahkan angka 1900 dan 2000 untuk tahunnya.
  5. Selanjutnya tambahkan lagi kode untuk memberi keterangan pada fungsi DATENIK.
    Private Sub Workbook_Open()
        Application.MacroOptions _
        Macro:="DATENIK", _
        Category:=2, _
        ArgumentDescriptions:=Array( _
            "16 digit NIK / referensi sel yang berisi NIK", _
            "Tipe Tanggal masukkan angka 0 sampai 3")
    End Sub
    
    Dengan menambahkan kode VBA ini, maka ketika membuka jendela Function Arguments akan terdapat keterangan pada setiap argumen yang ada pada fungsi DATENIK.

Function Arguments pada fungsi DATENIK

Seperti yang saya jelaskan di awal, untuk menggunakan fungsi DATENIK, bentuk penulisan fungsinya adalah:
=DATENIK ( NIK / Referensi Sel yg berisi NIK; Tipe Data/Tanggal )
jadi ada 2 argumen yang digunakan dan harus diisikan pada fungsi DATENIK:
  1. NIK merupakan argumen untuk memasukkan data NIK atau referensi sel yang berisi NIK.
  2. Tipe merupakan tipe atau jenis format date yang ingin digunakan, ada 4 tipe yang bisa di pakai yang diwakili dengan angka 0 sampai 3.
Contoh penggunaan fungsi DATENIK:
=DATENIK ( A2; 0 )
Contoh Penggunaan Fungsi DATENIK

Lampiran

DATENIK - Tanggal Lahir dari NIK Excel Binary Workbook (xlsb)

Jika Anda hanya ingin menggunakan satu tipe Date tertentu saja atau mengubah ke format Date yang lain, Anda bisa mengganti kode VBA untuk Fungsi DATENIK di atas dengan kode VBA berikut ini:
Function DATENIK(NIK As Variant) As Date
 Dim tanggal, bulan, tahun As Integer
   
 tanggal = Mid(NIK, 7, 2)
 bulan = Mid(NIK, 9, 2)
 tahun = Mid(NIK, 11, 2)
   
   'Validasi Tanggal -40 untuk perempuan
    If tanggal > 40 Then tanggal = tanggal - 40
   
   'Menambahkan awalan 19 / 20 pada tahun
    If (tahun + 2000) > Year(Now()) Then
      tahun = 1900 + tahun
    Else
      tahun = 2000 + tahun
    End If
   
 DATENIK = tanggal & "/" & bulan & "/" & tahun
End Function
Dan untuk penulisan rumusnya, hanya menggunakan satu argumen yaitu argumen NIK.
=DATENIK ( NIK / Referensi Sel yg berisi NIK )
Contoh penggunaannya seperti terlihat pada gambar di bawah ini:

Fungsi Excel DATENIK
Fungsi DATENIK yang kedua ini akan menghasilkan nilai Date dalam format Serial, contohnya untuk tanggal 14/11/2018 nilai yang ditampilkan adalah 43418, agar bisa menjadi tanggal 14/11/2018 maka selnya harus di ubah dulu formatnya menjadi format Date.

Jadi silahkan Anda pilih salah satu fungsi DATENIK mana yang ingin Anda gunakan.

Lampiran

DATENIK - Tanggal Lahir dari NIK 2 Excel Binary Workbook (xlsb)

Sekian tutorial cara membuat  Fungsi DATENIK untuk membuat Tanggal Lahir dari NIK, Semoga Bermanfaat...
Comments


EmoticonEmoticon