@Gumay ... Knp d Cell c klo datanya kosong jd eror ...
Maksudnya, mengapa macronya error jika tidak ada data pada sel C? Begitu khan? Saya coba komentari sedikit script dari file tersebut. Pada dasarnya, baris script:
...
dir = "d:\" & Sheet1.[D8] & ""
Set xFSO = CreateObject("scripting.filesystemobject")
Set xfolder = xFSO.GetFolder(dir)
...
otomatis akan menghasilkan kesalahan jika:
— nilai sel D8 pada Sheet1 tidak ada (sel kosong), atau ...
— nama folder pada sel D8 secara fisik tidak ada pada hard drive.
Sederhana saja bukan? Seperti yang sudah pernah saya sampaikan, sebelum bekerja dengan folder atau filenya, uji dahulu apakah folder atau filenya ada, misalkan:
...
'+-- Periksa apakah sel D8 ada isinya!
If Len(Sheet1.[D8]) Then
dir = "d:\" & Sheet1.[D8] & ""
Set xFSO = CreateObject("scripting.filesystemobject")
With xFSO
'+-- Periksa apakah folder ada!
If .FolderExists(dir) Then
Set xFolder = xFSO.GetFolder(dir)
'+-- Periksa apakah ada file pada folder tersebut!
If xFolder.Files.Count > 1 Then
i = 2
'+-- Jika ada, ambil data filenya!
Set xFiles = xFolder.Files
For Each xFilename In xFiles
Sheet1.Cells(i, 1) = xFilename.Name
i = i + 1
Next
End If
End If
End With
End If
...
Demikian.