Cara Mengambil Nama File di Excel dari Folder Otomatis dengan VBA Macro

oleh | 9 Mei 2025 | VBA Macro | 0 Komentar

Apakah Anda sering bekerja dengan banyak file dalam satu folder dan ingin menampilkan daftar nama filenya ke Excel secara otomatis? Jangan khawatir, karena pada artikel ini kita akan membahas cara mengambil nama file di Excel hanya dengan beberapa baris script VBA (Macro). Ini sangat berguna jika Anda ingin mengelola daftar file dokumen, foto, atau data lainnya langsung dari folder tertentu tanpa mengetiknya satu per satu.

Artikel ini akan membimbing Anda langkah demi langkah, mulai dari menulis script macro, mengeksekusinya, hingga menyesuaikan hasil output agar sesuai dengan kebutuhan. Pastikan Anda membaca sampai akhir karena kita juga akan membahas cara menyesuaikan sel tempat keluaran ditampilkan.

Mengapa Perlu Mengambil Nama File di Excel?

Mungkin Anda bekerja sebagai administrator dokumen, staf logistik, atau seorang pengarsip data. Tugas seperti mendata nama file sangat sering dilakukan. Dengan memanfaatkan cara mengambil nama file di Excel secara otomatis, Anda akan menghemat waktu dan menghindari kesalahan manual dalam mencatat nama file.

Script VBA: Cara Mengambil Nama File di Excel (Tanpa Ekstensi)

Berikut ini adalah contoh kode macro VBA yang dapat langsung Anda gunakan:

Sub AmbilNamaFileTanpaEkstensi()
    Dim folderPath As String
    Dim fileName As String
    Dim i As Long
    Dim pos As Integer
    Dim startRow As Long, startCol As Long

    ' Menentukan sel awal output, misalnya C5
    startRow = 5
    startCol = 3 ' Kolom C

    ' Memilih folder tempat file berada
    With Application.FileDialog(msoFileDialogFolderPicker)
        .Title = "Pilih Folder"
        If .Show <> -1 Then Exit Sub
        folderPath = .SelectedItems(1) & "\"
    End With

    fileName = Dir(folderPath)
    i = 1

    Do While fileName <> ""
        ' Ambil nama file tanpa ekstensi
        pos = InStrRev(fileName, ".")
        If pos > 0 Then
            Cells(startRow + i - 1, startCol).Value = Left(fileName, pos - 1)
        Else
            Cells(startRow + i - 1, startCol).Value = fileName
        End If
        i = i + 1
        fileName = Dir
    Loop

    MsgBox "Proses selesai! Nama file telah ditampilkan.", vbInformation
End Sub

Cara Menggunakan Macro

Untuk memasang script VBA Macro cara mengambil nama file di Excel ini adalah sebagai berikut:

Baca Juga  Cara Membuat Absensi Guru Excel Otomatis dengan Warna untuk Hari Libur
  1. Buka Excel, tekan Alt + F11 untuk membuka Visual Basic for Applications (VBA).
  2. Klik Insert > Module.
  3. Salin dan tempel kode VBA di atas.
  4. Kembali ke Excel, tekan Alt + F8, pilih UrutkanData, lalu klik Run.

Jika benar, maka hasilnya ssebagai berikut:

Penjelasan Singkat Script

Script di atas dibuat untuk mengambil semua nama file di dalam folder, lalu menampilkannya tanpa ekstensi file (seperti .jpg, .pdf, atau .xlsx).

Beberapa bagian penting dari script:

  • Application.FileDialog(msoFileDialogFolderPicker) digunakan untuk membuka dialog pilih folder.
  • Dir(folderPath) digunakan untuk membaca nama file satu per satu.
  • InStrRev(fileName, ".") mendeteksi posisi titik terakhir dalam nama file (untuk memisahkan nama dari ekstensi).
  • Left(fileName, pos - 1) mengambil nama file saja tanpa ekstensi.

Cara Mengubah Output Agar Tampil di Sel atau Kolom Tertentu

Secara default, script ini akan menampilkan hasil mulai dari sel C5 ke bawah. Namun, jika Anda ingin menampilkannya di kolom atau baris lain, cukup ubah nilai berikut:

startRow = 5       ' Ganti angka 5 dengan baris awal yang Anda inginkan
startCol = 3       ' Ganti angka 3 (kolom C) sesuai kebutuhan (1 = kolom A, 2 = kolom B, dst.)

Contoh: Jika Anda ingin output muncul mulai dari sel E2, cukup ubah menjadi:

startRow = 2
startCol = 5 ' karena kolom E adalah kolom ke-5

Tips Tambahan

  • Jika Anda ingin menampilkan nama file beserta ekstensinya, cukup ubah bagian ini:
  Cells(startRow + i - 1, startCol).Value = Left(fileName, pos - 1)

menjadi:

  Cells(startRow + i - 1, startCol).Value = fileName
  • Script ini akan menampilkan semua jenis file, tidak dibatasi ekstensi tertentu. Jika Anda hanya ingin mengambil file .jpg atau .xlsx, Anda bisa memodifikasi script menggunakan filter Dir(folderPath & "*.jpg").

Kesimpulan

Dengan menggunakan script macro VBA seperti di atas, cara mengambil nama file di Excel bisa dilakukan secara otomatis, cepat, dan efisien. Anda tidak perlu lagi mencatat satu per satu secara manual. Script ini cocok digunakan oleh siapa saja yang bekerja dengan pengelolaan file dalam jumlah besar.

Baca Juga  Cara Membuat Dropdown List Tanpa Baris Kosong di Excel dengan VBA

Jangan ragu untuk menyesuaikan bagian startRow dan startCol agar hasil output sesuai dengan template Excel Anda. Jika digunakan dengan benar, cara mengambil nama file di Excel ini bisa menjadi solusi hebat dalam pekerjaan harian Anda.

Jangan lupa untuk menyimpan file Excel Anda sebagai Macro-Enabled Workbook (.xlsm) agar script bisa berjalan sempurna. Semoga tutorial ini bermanfaat dan menjadi solusi praktis bagi Anda yang membutuhkan cara mengambil nama file di Excel secara otomatis.

Download Template Gratis

Bagi Anda yang ingin mencoba teknik ini secara langsung, kami telah menyiapkan template gratis yang dirancang khusus untuk membantu Anda mempaktikkan Cara Mengambil Nama File di Excel dari Folder Secara Otomatis ini. File Excel bisa didownload melalui tautan berikut:

download file Excel

Atau juga jika ingin mempelajari langkah demi langkah secara visual, bisa kunjungi Youtube Channel Depot Excel. Di sana teman-teman akan melihat bagaimana rumusnya bekerja. Semoga bermanfaat!

0 Komentar

Kirim Komentar

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *

Join Our Newsletter