Skip to main content

Menulis dan Menyimpan File Teks di Access VBA

Meyimpan data dalam file teks adalah salah satu solusi yang bagus dalam menyusun program. Menggunakan file teks merupakan salah satu cara untuk menyimpan data yang akan ditampilkan di layar. Data yang tersimpan bisa digunakan sebagai pengganti atau pelengkap dari data yang tersimpan dalam database.

Secara umum programmer menggunakan file teks untuk menuliskan semacam log book yang berisi error selama sistem sedang berjalan atau pun aktivitas seorang pengguna yang masuk ke dalam sebuah sistem. Dengan demikian, mereka bisa mengetahui apa penyebab error itu. Selain itu, programmer juga bisa mengetahui bila seorang pengguna yang masuk ke dalam sistem telah menghapus atau mengedi sebuah record, yaitu dengan membuat semacam user activity log book yang berisi aktivitas seorang user saat berada dalam sebuah sistem.

Dengan menggunakan FileSystemObject yang ada di Access VBA, kita bisa menuliskan data dalam bentuk file teks. Caranya adalah sebagai berikut:
  1. Membuat objek file system dengan menggunakan metode Create.
  2. Menggunakan metode OpenTextFile untuk membuka file teks. Kita dapat membuka file teks dengan dua mode:
    • For writing (nilai = 2, konstanta = ForWriting). Dengan mode ini, kita akan menuliskan data baru yang digunakan untuk menggantikan data yang lama (data lama akan dihapus). Kita menggunakan mode For Writing jika fils teks sudah ada dan hanya ingin mengganti isi file itu dengan data baru
    • For appending (nilai = 8, konstanta = ForAppending). Dengan mode ini, kita akan menambahkan data baru di akhir file yang sudah dibuat sebelumnya
  3. Untuk menuliskan data ke dalam file teks, kita menggunakan metode Write, WriteLine, atau WriteBlankLines.
  4. Terakhir, setelah menuliskan data yang diperlukan, kita menutup file teks.
Berikut ini adalah penjelasan atas tiga metode yang digunakan untuk menuliskan data ke dalam file teks.


Metode Deskripsi
Write Menuliskan data ke dalam file teks tanpa menambahkan karakter baris baru (new line character). Contohnya seperti ini:
objFile.Write ("Menulis baris 1.")
objFile.Write ("Menulis baris 2.")
Hasilnya akan seperti ini:
Menulis baris 1.Menulis baris 2.
WriteLine Menuliskan data ke dalam file teks dengan menambahkan karakter baris baru (new line character). Contohnya seperti ini:
objFile.WriteLine("Menulis baris 1.")
objFile.WriteLine("Menulis baris 2.")
Hasilnya akan seperti ini:
Menulis baris 1.
Menulis baris 2.
WriteBlankLines Menuliskan baris kosong ke dalam file teks. Contoh berikut ini menuliskan dua buah string yang terpisah ke dalam sebuah file teks. Pemisahan dilakukan oleh penulisan sebuah baris kosong di antara dua string itu.
objFile.Writeline ("Menulis baris 1.")
objFile.WriteBlankLines(1)
objFile.Writeline ("Menulis baris 2.")
Hasilnya akan seperti ini:
Menulis baris 1.

Menulis baris 2.

Satu kelemahan dari FSO di file teks adalah bahwa FSO tidak bisa digunakan secara langsung untuk memodifikasi baris tertentu dalam file teks. Sebagai contoh, kita tidak bisa memodifikasi secara langsung baris ke 3 dari 6 baris yang ada dalam sebuah file teks. Bila ingin mengubah baris ke 3 dari 6 baris yang ada dalam sebuah file teks, maka kita harus:
  • Membaca keseluruhan isi file teks.
  • Menuliskan baris 1 dan 2 kembali ke dalam file teks.
  • Menuliskan baris ke 3 hasil modifikasi ke dalam file teks.
  • Menuliskan kembali bari 4 s.d. 6 ke dalam file teks

Menimpa Data dalam file teks yang sudah ada

Menuliskan data dengan menimpa data dalam file teks yang sudah ada biasa dilakukan bila kita telah mempunyai file teks yang sudah tersedia, tetapi ingin mengganti isinya dengan data yang terbaru. Sebagai contoh, currentUserLog.txt biasa digunakan untuk menuliskan log book yang berisi aktivitas saat seorang user sedang melakukan aktivitasnya di sebuah sistem. Pada situasi seperti ini (current), programmer akan menuliskan log book saat seorang user masuk (log in) ke dalam sistem, dan FSO akan membuka file yang sudah ada dan menuliskan data seperlunya (dengan mengganti data lama). Bila user itu log out, maka FSO akan menyimpan data dan menutup file currentUserLog.txt. Begitu user masuk lagi ke dalam sistem, maka FSO akan membuka dan menuliskan data baru lagi ke dalam currentUserLog.txt. Demikian proses penulisan data ini berlangsung. Adapun isi data itu hanya menunjukkan aktivitas paling akhir saat user terakhir kali masuk ke dalam sistem.

Kita bisa menimpa data dalam file teks yang sudah ada menggunakan metode OpenTextFile dengan mode ForWriting (konstanta=2).

Contoh lain dari mode ForWriting untuk metode OpenFiletText adalah seperti gambar di bawah ini..


Gambar di atas adalah contoh inisialisasi modem SpeedUp yang dicatat dalam file teks dengan nama ModemLog_SpeedUp Modem.txt. Setiap kali diinstall, modem itu akan membuat file dengan nama tersebut yang isinya adalah proses inisialisasi sistem dalam modem SpeedUp. Saat di-install, data baru dalam file itu akan selalu menimpa data yang lama.

Menambah Data baru dalam file teks yang sudah ada

Dengan menggunakan FSO, kita bisa menambahkan data baru ke dalam file teks yang sudah ada. Penambahan data dalam sebuah file teks yang sudah ada biasa dilakukan untuk tujuan analisa trend dan memetakan pola tertentu sebuah sistem. Dengan data yang disusun secara kronologis, kita bisa mencatat perilaku sebuah sistem atau user yang masuk ke dalam sistem. Dengan cara ini, kita bisa melihat sebuah pola, misalnya, form apa saja yang sering dibuka, jam sibuk sebuah sistem, membuat pola distribusi normal. Nah, bila sesuatu yang tidak normal terjadi, kita bisa memetakan penyebab mengapa sesuatu yang tidak normal itu terjadi.

Menggunakan metode OpenTextFile dengan mode ForAppending, kita bisa menambahkan data baru tanpa mengganti data lama. Data baru akan ditambahkan di bagian akhir file teks.

Gambar di bawah ini adalah contoh metode OpenFileText dengan mode ForAppending dari file mysql_error.log. Perhatikan urutan tanggal dan waktu yang menunjukkan data ditambahkan di bagian bawah atau akhir dari file itu.

Contoh Cara Menulis dan Menyimpan File Teks

Untuk contohnya, kita bisa membuka post Membuka File Teks di Access VBA., di bagian akhir dari posting itu.

Comments

Posting Terpopuler

Normalisasi, Denormalisasi, dan Anomali Database

Membuat Relasi Database

Menampilkan Data MySQL dalam Form di Access