mba siti,
Saya mau menambahkan, mungkin saja bisa menjadi bekal kalo nanti mau cari size 
file/foldernya.
Script yang ditambahkannya adalah di
       .Cells(r, 1) = r                   '= nomor urut
        .Cells(r, 2) = MyFile.Name  '= ambil Name-nya!, Tulis di cell
        .cells(r,3)=round (Myfile.size/1000000,2) & " MB"   ' = Sizenya berapa 
 
Regards,
IF
 

 -----Original Message-----
From: [email protected] [mailto:[email protected]]on Behalf Of 
siti Vi
Sent: Tuesday, March 03, 2009 5:58 PM
To: [email protected]
Subject: Re: ]] XL-mania [[ Mengambil data dalam suatu sheet untuk diprint 
berdasarkan kriteria tertentu



mohon maaf para XL-maniawan XL-maniawati..

'kepala' thread ini sudah berumur  1 pekan, dan sebetulnya sudah "game-over" 
dengan adanya solusi dari mas kid yg memanfaatkan servis winAPI.

tapi siti masih mauk ngeyel ceriwis soal how-to-loop files in a folder
seperti yg juga sudah di singgung mas kid: bisa dgn memanfaatkan FSO 
(objek sistem per-file-an) yg memang bisa diakses melalui vba.
( 'ancen aku 'cah ngeyelan o'..)  
akhir kalimat  = 'o' itu singkatan dan "kok", dan diucapkan secara singkat 
segera setelah 
kata di depannya hampiir tanpa jedah. ini salah satu slank semarangan... 

makro berikut ini pernah muncul di milis XL-mania kita;
walaupun tidak persis sama UJUNG tujuannya dengan request pak herry s.,
tetapi modifikasinya tidak sulit karena hanya urusan mengubah instuksi:
mencatat nama file  diganti menjadi  membuka file.
sedangkan di tahap itu; koleksi-files dlm sebuah folder tertentu (where: FOLDER 
dipilih 
sendiri oleh user melalui dialogBox BrowseForFolder) sudah di depan mata.

mudah mudahan cukup berharga sekedar untuk menambah koleksi makro kita...
---------------------------

Sub ListFilesNameOfSpecifiedFolder()
   '----------------------------------------------------
   ' siti Vi / bluewater 21 april 2008
   ' mendaftar NamaFiles dari sebuah folder tertentu,
   ' truzz ditulis di ActiveSheet's cells
   '----------------------------------------------------
   Dim fBrowser  As BrowseInfo
   Dim PathDirNm As String
   Dim szTitle   As String
   Dim lpIDList  As Long
   Dim FSO       As Object
   Dim FOL       As Object
   Dim MyFile    As Object
   Dim r         As Integer
   
   '== BAGIAN I: Urusan mencari Folder =========
   '-- (user pilih folder melalui BrowseInfo)----------
   szTitle = "©tv: Pilih salah satu Folder..."
   With fBrowser
      .hWndOwner = Application.Hwnd
      .lpszTitle = lstrcat(szTitle, "")
      .ulFlags = BI_RetuOnlyFSDir + BI_NoGoBelowDomain
   End With   
   lpIDList = SHBrowseForFolder(fBrowser)
   If (lpIDList) Then
      PathDirNm = Space(Max_Path)
      SHGetPathFromIDList lpIDList, PathDirNm
      PathDirNm = Left(PathDirNm, InStr(PathDirNm, vbNullChar) - 1)
      Range("D2") = PathDirNm ' hanya untuk info di sheet
   Else    '( jika lpIDList = 0 / false Then )
      Exit Sub
   End If
   
   '== BAGIAN II: ===============================
   '-- Urusan mendaftar fileName ke sheet --------------
   Set FSO = CreateObject("Scripting.FileSystemObject")
   Set FOL = FSO.GetFolder(PathDirNm).Files
   ' hapus area data
   Range("b6").CurrentRegion.Offset(1, 0).ClearContents
   ' - kunjungi semua Anggota Koleksi (file)
   With Range("B6")
      For Each MyFile In FOL
        r = r + 1
        .Cells(r, 1) = r                   '= nomor urut
        .Cells(r, 2) = MyFile.Name  '= ambil Name-nya!, Tulis di cell
      Next
   End With
End Sub


' ========================================================
' siti's Note:
' ========================================================
' UDT (user define type) tidak di tampakkan di mail ini; di VBE anda bisa 
' melihatnya di module bernama UDT
'---------------------------------------------------------------------------------------------------
'
' karena di dalam sebuah folder bisa mengandung BANYAK files
' maka dapat dikatakan: file-file dlm folder tsb adalah SEBUAH Object 
Collection, 
' di mana setiap File adalah anggota dari Koleksi (variable FOL) tsb
'
' seperti BIASANYA, mengakses koleksi harus dng struktur Looping.
' pilihan paling cocok adalah struktur  For Each - Next
' dan sebelumnya harus kita siapkan sebuah variable-Object
' yg mewakili Tiap Anggota tsb. (= variable MyFile)
'
' dengan cara itu, di tiap [step loop] kita hanya perlu menyebut 
' [ Variables DOT Property ] saja
' (dlm contoh di atas = MyFile.Name )
' sambil "menuliskan" nya ke sebuah cell yg nilai Row nya kita
' "naikkan" secara beruntun dengan sebuah Counter [r]
' (anda bilang : "secara berurutan sesuai jumlah file yg ada")
'
' Cell C5 (tempat hasil /nama-nma file akan dituliskan) dapat
' anda modif. sesuai tempat di sheet yg menurut anda lebih tepat
'------------------------------------------------------------------
'  jurangmangu, hari kartini, 21 april 2008
'------------------------------------------------------------------





2009/2/26 Herry Sutjipto < herry...@cv- <mailto:[email protected]> 
aldira.co.id>


Hallo para pakar XL-mania ……
Tolong dong …. Saya lagi pusing …. Manggil data untuk di print ulang.
Bisa memasukkan data, tapi mau manggil yang sudah terlanjur masuk nggak bisa ….
Problemnya terlampir dalam worksheet. Ada dua problema di “Sheet(Input_V)” dan 
“Sheet(Print_V)”.
Terima kasih sebelumnya.
Best regards.
Herry Sutjipto






Kirim email ke