Skip to main content

Membuat Surat Lamaran Kerja dengan Access VBA dan Template MS Word

Bagi kebanyakan orang, umur 20 sampai dengan 35 tahun adalah usia yang sangat produktif. Pada usia 20an tahun, banyak orang yang sudah bekerja untuk memulai karirnya. Mereka yang berusia itu mulai mencoba mengirim surat lamaran kerja ke berbagai macam perusahaan untuk posisi staff, management trainee, program pengembangan karyawan, dan sebagainya. Ada kalanya, jumlah surat lamaran kerja yang dibuat mungkin mencapai puluhan setiap bulannya, mengingat jaman sekarang, penggunaan kertas untuk mencetak mulai berkurang. Banyak perusahaan yang meminta calon karyawan untuk mengirimkan surat lamaran kerja beserta foto dan daftar riwayat hidup melalui email.
Mungkin, sebagian dari kita mengalami kesulitan dalam mengelola surat lamaran kerja yang sudah dikirimkan. Bukan tanpa sebab, karena banyaknya file surat lamaran kerja, kita jadi bingung nama perusahaan, posisi yang dilamar, atau mungkin tanggal pengiriman yang mana filenya mungkin sudah terhapus. Nah, untuk menyiasatinya, kita dapat menggunakan MS Access sebagai media penyimpan database yang berkaitan dengan surat lamaran, dan membuat output dalam MS Word sebagai sarana untuk membuat surat lamaran.

Membuat surat lamaran kerja memang memerlukan seni tersendiri, satu individu dengan individu lainnya belum tentu sama cara pembuatannya. Namun demikian, isi dari surat lamaran kerja pasti memuat sesuatu yang berkaitan dengan pekerjaan seperti: nama perusahaan yang dilamar, alamat, posisi, kode posisi, tanggal, dan sebagainya. Berikut ini adalah langkah-langkah untuk membuat surat lamaran kerja.
  1. Buatlah folder pada Windows Explorer dengan nama SuratLamaranKerja.  Folder inilah yang akan digunakan untuk menyimpan file MS Word dan MS Access.
  2. Buatlah template dengan MS Word, caranya:
    1. Buka Aplikasi pengolah kata MS Word. Bukalah Word Options seperti pada Gambar 1.
    2. Gambar 1. Word Options pada MS Word
    3. Setelah itu, pada menu Advance, arahkan ke Show Document Content dan beri tanda centang pada Show Bookmark, seperti pada Gambar 2. Tekan tombol OK untuk mengakhirinya.
      Gambar 2. Show boolmark pada Word Options
    4. Setelah itu buatlah surat lamaran kerja dalam bentuk yang kasar lebih dahulu, seperti pada contoh surat lamaran kerja yang berbahasa Indonesia. Tulisan yang diblok warna kuning adalah field yang berupa bookmark.
    5. Gambar 3. Menambahkan bookmark untuk tanggal
    6. Untuk membuat bookmark, pilihlah kata yang ingin dibuat bookmark, misalnya kata Tanggal. Pilihlah dengan memblok kata Tanggal, setelah itu klik tab Insert, pada grup Links, kliklah Bookmark. Isikan Tanggal pada kotak Bookmark name: dan tekan Add untuk menyimpannya. Kata Tanggal sudah diberi tanda kurung [] sehingga menjadi [Tanggal]. Tanda kurung [] dibuat oleh Word yang berarti tulisan yang berada di dalam tanda itu adalah sebuah bookmark.
    7. Lakukan hal yang sama untuk tulisan lain yang diblok. Gunakan tulisan yang diblok itu sebagai nama bookmark, seperti NamaBagian, NamaPerusahaan, dan seterusnya.
    8. Simpanlah file itu dengan nama LamaranId01.dotx dalam folder SuratLamaranKerja. Ekstensi file dotx menunjukkan bahwa file itu adalah template MS Word. Kita dapat menyimpannya dengan nama lain saat sudah memahami dengan benar nantinya.
    9. Tutup file di atas.
  3. Bukalah MS Access, lalu buatlah Database Access dengan menekan Blank Database. Beri nama Blank Database itu SuratLamaranKerja.accdb, lalu tekan tombol Create. Jangan lupa untuk membuat database itu di folder SuratLamaranKerja.
  4. Gambar 4. Tampilan MS Access saat pertama kali dibuka
  5. Tampilan awal database SuratLamaranKerja.accdb ini mungkin seperti Gambar 5. Oleh karena itu ubahlah tampilannya, dari Datasheet View menjadi Design View, dengan memilih Design View seperti itu.
  6. Gambar 5. Tampilan awal database sesaat setelah dibuat
  7. Simpanlah tabel itu dengan nama tabelPerusahaan dan kita akan membuat field seperti pada Gambar 6.
  8. Gambar 6. Properti tabel untuk tabelPerusahaan
  9. Isikan nama-nama field berikut ini beserta properti yang melekat pada field itu:
    1. Field Name = ID
      1. Data Type = Autonumber
    2. Field Name = NamaBagian
      1. Data Type = Text
      2. Description = Nama bagian/departemen yang menerima
      3. Caption = Bagian Yang Menerima
    3. Field Name = UP
      1. Data Type = Text
      2. Description = Untuk si penerima, kepada siapa surat lowongan kerja itu ditujukan
      3. Caption = Untuk Penerima
    4. Field Name = NamaPerusahaan
      1. Data Type = Text
      2. Description = Nama perusahaan yang memasang iklan lowongan kerja
      3. Caption = Nama Perusahaan
    5. Field Name = Alamat1
      1. Data Type = Text
      2. Description = Alamat perusahaan, baris 1
      3. Caption = Alamat Baris 1
    6. Field Name = Alamat2
      1. Data Type = Text
      2. Description = Alamat perusahaan, baris 2
      3. Caption = Alamat Baris 2
    7. Field Name = WilayahKota
      1. Data Type = Text
      2. Description = Wilayah atau kota tempat perusahaan itu berada, misal: Jakarta Selatan, Jakarta Barat, dsb
      3. Caption = Wilayah/Kota
    8. Field Name = Propinsi
      1. Data Type = Text
      2. Description = Propinsi tempat perusahaan itu berada
      3. Caption = Propinsi
    9. Field Name = KodePos
      1. Data Type = Text
      2. Description = Kode pos dari wilayah
      3. Input Mask = 00000;;_
      4. Caption = Kode Pos
    10. Field Name = Negara
      1. Data Type = Text
      2. Description = Negara
      3. Caption = Negara
    11. Field Name = CantumkanNegara
      1. Data Type = Yes/No
      2. Description = Untuk Cantumkan nama negara ke dalam surat lamaran
      3. Caption = CantumkanNegara
    12. Field Name = PosisiLamaran
      1. Data Type = Text
      2. Description = Posisi yang dilamar
      3. Caption = Posisi Yang Dilamar
    13. Field Name = KodePosisi
      1. Data Type = Text
      2. Description = Kode posisi yang dilamar, bila ada
      3. Caption = Kode Posisi
    14. Field Name = Email
      1. Data Type = Text
      2. Description = Nama email yang dituju
      3. Caption = Alamat Email
    15. Field Name = NamaSumber
      1. Data Type = Text
      2. Description = Nama sumber dari mana lowongan itu diperoleh, misalnya: nama surat kabar, website, dsb
      3. Caption = Nama Sumber Iklan
    16. Field Name = Bahasa
      1. Data Type = Text
      2. Description = Bahasa yang digunakan dalam surat lamaran, ada dua pilihan: Indonesia dan Inggris
      3. Caption = Bahasa
      4. Display Control = Combo Box (berada pada tab Lookup)
      5. Row Source Type = Value List
      6. Row Source = Indonesia;Inggris
      7. Bound Column = 1
      8. Column Count = 1
      9. Allow Value List Edits = Yes
    17. Field Name = Tanggal
      1. Data Type = Date/Time
      2. Description = Tanggal membuat surat lamaran
      3. Format = dd mmmm", "yyyy
      4. Caption = Tanggal Pembuatan
    18. Field Name = TanggalIklan
      1. Data Type = Date/Time
      2. Description = Tanggal pemasangan iklan lowongan kerja
      3. Format = dd mmmm", "yyyy
      4. Caption = Tanggal Iklan
    19. Field Name = FormatPenanggalan
      1. Data Type = Text
      2. Description = Masukkan format penulisan tanggal, misal: 10 April 2015, format penanggalan "dd mmmm yyyy"; April 10, 2015 format penanggalan "mmmm dd, yyyy"
      3. Caption = Format Penanggalan
      4. Display Control = Combo Box (berada pada tab Lookup)
      5. Row Source Type = Table/Query
      6. Row Source = SELECT tabelPerusahaan.FormatPenanggalan FROM tabelPerusahaan GROUP BY tabelPerusahaan.FormatPenanggalan ORDER BY tabelPerusahaan.FormatPenanggalan;
      7. Bound Column = 1
      8. Column Count = 1
      9. Allow Value List Edits = Yes
    20. Field Name = NamaFileWord
      1. Data Type = Text
      2. Description = Nama file di MS Word
      3. Caption = Nama File MS Word
      4. Display Control = Combo Box (berada pada tab Lookup)
      5. Row Source Type = Table/Query
      6. Row Source = SELECT tabelPerusahaan.NamaFileWord FROM tabelPerusahaan GROUP BY tabelPerusahaan.NamaFileWord ORDER BY tabelPerusahaan.NamaFileWord; 
      7. Bound Column = 1
      8. Column Count = 1
      9. Allow Value List Edits = Yes
  10. Simpan dan tutup tabelPerusahaan.
  11. Sorotlah tabelPerusahaan, lalu pilih tab Create dan tekan Form pada grup Forms, seperti Gambar 7.
    Gambar 7. Tombol Create Form
  12. Access akan langsung membuat form yang ditampilkan dalam format Layout View, seperti Gambar 8. Ubahlah formatnya ke Design View. Simpan form ini terlebih dahulu dengan nama formPerusahaan.
  13. Gambar 8. Layout view dari form yang baru saja dibuat dengan menggunakan tabelPerusahaan sebagai sumber recordnya
  14. Pada bagian footer, sisipkan tombol perintah dengan menekan Button (Form Control). Klik ganda pada tombol yang baru saja dibuat untuk menampilkan properti tombol. Atur properti berikut ini:
    1. Name= TransferKeWord
    2. Caption= Transfer Ke MS Word
  15. Hasilnya seperti tampak pada Gambar 9.
  16. Gambar 9.Menambahkan command button TransferKeWord
  17. Masih di property sheet dari tombol perintah TransferKeWord, bukalah properti On Click pada tab Event dan atur properti itu ke [Event Procedure] sehingga Access akan menampilkan Visual Basic Editor. Sebelum membuat kode [Event Procedure] lebih jauh, pada menu dari Visual Basic Editor, pilihlah menu Tools dan kkik References sehingga muncul daftar referensi yag tersedia (Available References) seperti Gambar 10. beri tanda centang pada Microsoft Word 12.0 Object Library. Klik OK untuk menutup menu References dan kembali ke editor.
  18. Gambar 10. Mengaktifkan Microsoft Word 12.0 Object Library pada reference
  19. Hapus semua kode atau deklarasi yang ada dalam editor sampai bersih lalu isikanlah kode berikut ini untuk seluruh event procedure yang ada di formPerusahaan:
    Option Compare Database
    Private Sub FormatPenanggalan_GotFocus()
      Me.FormatPenanggalan.Requery
    End Sub
    
    Private Sub TransferKeWord_Click()
      Dim strPenerima, strNamaBagian, strAlamat, strWilayah_Kota_Propinsi, _
      strPosisiLamaran, strNamaSumber, strEmail, strNamaPerusahaan As String
    On Error GoTo Err_Msg
      If Not IsNull(Me.NamaBagian) Then strPenerima = Me.NamaBagian
      If Not IsNull(Me.UP) Then
        If IsNull(Me.NamaBagian) Then
          strPenerima = Me.UP
        Else
          If Me.Bahasa = "Inggris" Then
            strPenerima = strPenerima & " (Attn: " & Me.UP & ")"
          Else
            strPenerima = strPenerima & " (UP: " & Me.UP & ")"
          End If
        End If
      End If
      If Not IsNull(Me.NamaPerusahaan) Then strNamaPerusahaan = Me.NamaPerusahaan
        If Not IsNull(Me.Alamat1) Then strAlamat = Me.Alamat1 Else strAlamat = Null
        If Not IsNull(Me.Alamat2) Then
          If Not IsNull(strAlamat) Then strAlamat = strAlamat & vbCrLf & Me.Alamat2 _
          Else strAlamat = Me.Alamat2
        End If
      If Not IsNull(Me.WilayahKota) Then strWilayah_Kota_Propinsi = Me.WilayahKota Else _
      strWilayah_Kota_Propinsi = Null
      If Not IsNull(Me.Propinsi) Then
        If Not IsNull(strWilayah_Kota_Propinsi) Then _
        strWilayah_Kota_Propinsi = strWilayah_Kota_Propinsi & ", " & Me.Propinsi _
        Else strWilayah_Kota_Propinsi = Me.Propinsi
      End If
      If Not IsNull(Me.KodePos) Then
        If Not IsNull(strWilayah_Kota_Propinsi) Then _
        strWilayah_Kota_Propinsi = strWilayah_Kota_Propinsi & " " & Me.KodePos _
        Else strWilayah_Kota_Propinsi = Me.KodePos
      End If
      If Me.CantumkanNegara Then
        If Not IsNull(strWilayah_Kota_Propinsi) Then _
        strWilayah_Kota_Propinsi = strWilayah_Kota_Propinsi & vbCrLf & Me.Negara _
        Else: strWilayah_Kota_Propinsi = Me.Negara
      End If
      If Not IsNull(Me.Email) Then strEmail = "Email: " & Me.Email
      If Not IsNull(Me.PosisiLamaran) Then strPosisiLamaran = Me.PosisiLamaran
      If Not IsNull(Me.KodePosisi) Then strPosisiLamaran = strPosisiLamaran & " (Kode: " & Me.KodePosisi & ")"
      If Not IsNull(Me.NamaSumber) Then strNamaSumber = Me.NamaSumber
    
      Dim Wrd As New Word.Application
      Set Wrd = CreateObject("Word.Application")
      Dim MergeDoc As String
      MergeDoc = Application.CurrentProject.Path
      MergeDoc = MergeDoc & "\" & Me.NamaFileWord
      Wrd.Documents.Add MergeDoc
      Wrd.Visible = True
      With Wrd.ActiveDocument.Bookmarks
        .Item("Tanggal").Range.Text = Format(Me.Tanggal, Me.FormatPenanggalan)
        .Item("NamaBagian").Range.Text = strPenerima
        .Item("NamaPerusahaan").Range.Text = strNamaPerusahaan
        .Item("Alamat").Range.Text = Nz(strAlamat, "")
        .Item("Wilayah_Kota_Propinsi").Range.Text = strWilayah_Kota_Propinsi
        .Item("Email").Range.Text = strEmail
        .Item("PosisiLamaran").Range.Text = strPosisiLamaran
        .Item("NamaSumber").Range.Text = strNamaSumber
        .Item("TanggalIklan").Range.Text = Format(Me.TanggalIklan, Me.FormatPenanggalan)
      End With
    Exit_Sub:
      Exit Sub
    Err_Msg:
      MsgBox "Error # " & str(Err.Number) & ", source: " & Err.Source & Chr(13) & Err.Description
      Resume Exit_Sub
    End Sub
    Private Sub NamaFileWord_GotFocus()
      Me.NamaFileWord.Requery
    End Sub 
Berikut ini adalah contoh template MS Word dalam bahasa Indonesia

Jakarta, [Tanggal]
[NamaBagian]
[NamaPerusahaan]
[Alamat]
[Wilayah_Kota_Propinsi]
[Email]


Dengan hormat,

Sesuai dengan penawaran lowongan pekerjaan dari bapak/ibu seperti yang termuat di [NamaSumber ] tertanggal [TanggalIklan], saya mengajukan diri untuk bergabung sebagai [PosisiLamaran].... dan seterusnya.

Hormat saya,

Nama pelamar

Lampiran: Curriculum Vitae dan pas foto


Gambar 11 Form view bila menggunakan bahasa Indonesia
Gambar 12 di bawah ini adalah hasil olahan dari template MS Wordyang telah dirapikan. Data diambil dari Access seperti pada Gambar 11, yaitu dengan menekan tombol Transfer ke MS Word dan dengan menggunakan kode VBA di atas.
Gambar 12 Hasil olahan dari MS Accee ke template MS Word
menggunakan bahasa Indonesia


Berikut ini adalah contoh template MS Word dalam bahasa Inggris

[Tanggal]
[NamaBagian]
[NamaPerusahaan]
[Alamat]
[Wilayah_Kota_Propinsi]
[Email]


Dear Sir/Madam,

Having read your advertisement for the position of [PosisiLamaran] published in the [NamaSumber] dated on [TanggalIklan], I am confident that I have the experiences and skills being required. I enclose my detailed curriculum vitae and a recent photograph for your review..... dan seterusnya.

Yours sincerely,

Nama pelamar
Gambar 13 Form view bila menggunakan bahasa Inggris
Gambar 14 di bawah ini adalah hasil olahan dari template MS Wordyang telah dirapikan. Data diambil dari Access seperti pada Gambar 13, yaitu dengan menekan tombol Transfer ke MS Word dan dengan menggunakan kode VBA di atas.

Gambar 14 Hasil olahan dari MS Accee ke template MS Word
menggunakan bahasa Inggris

Comments

Posting Terpopuler

Normalisasi, Denormalisasi, dan Anomali Database

Membuat Relasi Database

Menampilkan Data MySQL dalam Form di Access