[belajar-excel] List File Aray satu folder tanpa menuliskan alamat

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

[belajar-excel] List File Aray satu folder tanpa menuliskan alamat

dayatshogun46
Dear Exceler

Mohon bantuannya
Saya pernah buka kiriman group excel mengenai getlist menggunakan array

dengan scrip sebagai berikut :

Option Explicit
Public Function GetFileList(Optional sPath As String = vbNullString, _
  Optional sKriteria As String = vbNullString, _
  Optional lResultAsArray As Long = 0) As Variant
Dim sFile As String, sFilePath As String, sCari As String
Dim sList As String, sResult() As String
Application.Volatile
If LenB(sPath) = 0 Then
sFilePath = ThisWorkbook.Path & "\"
Else
sFilePath = sPath
If Right$(sPath, 1) <> "\" Then
sFilePath = sFilePath & "\"
End If
End If
If LenB(sKriteria) = 0 Then
sCari = "*"
Else
sCari = sKriteria
End If
Application.DisplayAlerts = False
sFile = Dir$(sFilePath & sCari)
Do While LenB(sFile) <> 0
sList = sList & sFile & "|"
sFile = Dir$
Loop
If Right$(sList, 1) = "|" Then
sList = Left(sList, Len(sList) - 1)
End If
If lResultAsArray <> 0 Then
GetFileList = WorksheetFunction.Transpose(Split(sList, "|"))
Else
GetFileList = sList
End If
Application.DisplayAlerts = True
End Function

Untuk srcrip diatas mesti mencantumkan Drive yang dituju ( Alamat yang dituju ) seperti =GetfileList("C:\........)

Sedikit pertanyaan dari saya, jika kita menggunakan file excel dalam satu folder dan hanya ingin mengetahui list isi dalam folder itu sendiri, kemudian berada di drive C: kita copy ke drive D: dengan apakah bisa formula diatas tanpa menuliskan rumus alamat D:....
Mohon bantuannya

Untuk MR.Kid sebelumya saya pernah posting masalah excel full screen ternyata saya sudah menemukan pembahasannya di milis tahun lalu. trims to all.

Malu bertanya, kerja manual

Salam
Nor Hidayat


======================================================
ModsNote:
(1) Sesuatu yg anda rujuk & jelas tempat keberadaannya
selain dikutip bagian yg ditanyakan, lebih baik lagi kalau
anda tunjukkan saja URL nya atau alamat situsnya;
agar member yg tertarik masalah anda dapat melihat
sendiri secara lebih lengkap.
Dengan anda mengatakan "dari Group Excel", kita belum tahu:
- grup apa itu, jika yg dimaksud sebuah group/milis di
Yahoo! Group; apa nama milisnya, dimana alamatnya, dst..

(2) (dilihat dari kutipan "motto" di akhir surat anda);
sepertinya anda belum sadar bahwa anda sedang berada
di Milis BELAJAR-EXCEL (BeExcel) bukan milis lain
("toko sebelah").
=======================================================
Reply | Threaded
Open this post in threaded view
|

Re: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat

iHaps
Mohon tambahan info; bisakah pertanyaan yg sedikit itu diperjelas

saya kutipkan bagian inti pertanyaan anda
>> Sedikit pertanyaan dari saya,
>> jika kita menggunakan file excel dalam satu folder dan hanya ingin
mengetahui
>> list isi dalam folder itu sendiri,
>> kemudian berada di drive C: kita copy ke drive D:
>> dengan apakah bisa formula diatas tanpa menuliskan rumus alamat D:...

"SESUATU" yg berada di Drive C (dan diCOPY ke Drive D) itu apa ?
File - kah ? File yg berisi Makro ini - kah ?, atau APA (kah) ?


*Sedikit tanggapan dari saya, *Saya belum pernah ketemu dengan asli posting
mengenai UDF tsb, (atau lupa).
Mungkin saja di "sono" nya file tsb diantar dengan penjelasan pemakaian UDF
yg disodorkan itu.
Tetapi Sekedar Info dapat kita berikan (maaf, kerena barangkali anda sudah
faham benar )  s.b.b.:

UDF (Fungsi buatan sendiri) yg anda tanyakan itu memerlukan *3
argument, *tetapi
*ketiga nya bersifat opsional *(boleh diisi boleh tidak), cara penulisan 3
argument itu akan sangat memperngaruhi HASIL fungsi tsb.

*Argument 1 = sPath *
data bertype TEXT/String, yang memberi info kepada UDF mengenai Path /
Nama-Folder-lengkap yg ingin di evaluasi
(di buat list of isi folder tsb).
Jika dikosongkan  UDF akan menganggap  sPath = *Folder tempat beradanya
File (workbook) berisi makro UDF ini*

*Argument 2 =  sKriteria *
data bertype TEXT/String, yang memberi info kepada UDF mengenai *filter
nama file yg ingin dibuat listnya*
Jika dikosongkan  UDF akan menganggap * "*"*, artinya semua file dlm folder
y gdisebut dlm Argument1 tanpa dibedakan akan di list semuanya.

*Argument 3 =  lResultAsArray*
data bertype Bilangan bulat ( jenis Long-Integer) boleh diisi 0, 1, 2 dst,
yang memberi info kepada UDF mengenai *cara List ditampilkan.*
** Jika *Argument3 di kosongkan* (tidak anda isi) UDF akan menganggap diisi
0 (nol), dan kelanjutannya *hasil fungsi akan berupa ARRAY* (tiap nama file
dlm list) ditulis tersendiri ( 1 nama file = 1 data (satu cell)
Oleh sebab itu anda perlu memilih banyak cells sekolom, sbg tempat ARRAY
FORMULA * GetFileList(Arg1,Arg2,0) *
** Tetapi jika *Argument3 ini diisi dengan angka BUKAN NOL*, maka cara
penulisan Listnya bukan sebagai Array, tetapi berupa *text data tunggal (1
data, dlm satu cell)*, walaupun berupa kalimat yg panjang sekali, berupa
rangkaian nama-nama file, tiap nama file dipisah (delimited) dengan
karakter "|"

Jadi ....
** jika folder yg ingin dibuat list-isi-file-nya adalah  *D:\DataQu\*
   sedangkan file berisi makro UDF ini ada di *
F:\Datanyak\KhususNyak\KoleksiUDF\*
** Filter nama file : anda hanya ingin llist* file MP3*
** Cara penulisan *List Hasil : ingin sebagai Array*
*
*
maka Argument 1 dan Argument 2 harus di tuliskan sbb:
=GetFileList("D:\DataQu","*.MP3",)
atau
=GetFileList("D:\DataQu","*.MP3",*0*)

CMIIWeeeee
~ i ~

member of milis *belajar-excel*
http://tech.groups.yahoo.com/group/belajar-excel/
http://milis-belajar-excel.1048464.n5.nabble.com/belajar-excel-List-File-Aray-satu-folder-tanpa-menuliskan-alamat-td5474396.html



2012/2/11 nor hidayat <[hidden email]>

> **
>
> Dear Exceler
> Mohon bantuannya
> Saya pernah buka kiriman group excel mengenai getlist menggunakan array
>
> dengan scrip sebagai berikut :
> Option Explicit
> Public Function GetFileList(*Optional sPath As String = vbNullString, _
> Optional sKriteria As String = vbNullString, _
> Optional lResultAsArray As Long = 0*) As Variant
> Dim sFile As String, sFilePath As String, sCari As String
> Dim sList As String, sResult() As String
> Application.Volatile
> If LenB(sPath) = 0 Then
> sFilePath = ThisWorkbook.Path & "\"
> Else
> sFilePath = sPath
> If Right$(sPath, 1) <> "\" Then
> sFilePath = sFilePath & "\"
> End If
> End If
> If LenB(sKriteria) = 0 Then
> sCari = "*"
> Else
> sCari = sKriteria
> End If
> Application.DisplayAlerts = False
> sFile = Dir$(sFilePath & sCari)
> Do While LenB(sFile) <> 0
> sList = sList & sFile & "|"
> sFile = Dir$
> Loop
> If Right$(sList, 1) = "|" Then
> sList = Left(sList, Len(sList) - 1)
> End If
> If lResultAsArray <> 0 Then
> GetFileList = WorksheetFunction.Transpose(Split(sList, "|"))
> Else
> GetFileList = sList
> End If
> Application.DisplayAlerts = True
> End Function
>
> Untuk srcrip diatas mesti mencantumkan Drive yang dituju ( Alamat yang
> dituju ) seperti =GetfileList("C:\........)
>
> Sedikit pertanyaan dari saya, jika kita menggunakan file excel dalam satu
> folder dan hanya ingin mengetahui list isi dalam folder itu sendiri,
> kemudian berada di drive C: kita copy ke drive D: dengan apakah bisa
> formula diatas tanpa menuliskan rumus alamat D:....
> Mohon bantuannya
>
> Untuk MR.Kid sebelumya saya pernah posting masalah excel full screen
> ternyata saya sudah menemukan pembahasannya di milis tahun lalu. trims to
> all.
>
> Malu bertanya, kerja manual
>
> Salam
> Nor Hidayat
>
> ======================================================
> ModsNote:
> (1) Sesuatu yg anda rujuk & jelas tempat keberadaannya
> selain dikutip bagian yg ditanyakan, lebih baik lagi kalau
> anda tunjukkan saja URL nya atau alamat situsnya;
> agar member yg tertarik masalah anda dapat melihat
> sendiri secara lebih lengkap.
> Dengan anda mengatakan "dari Group Excel", kita belum tahu:
> - grup apa itu, jika yg dimaksud sebuah group/milis di
> Yahoo! Group; apa nama milisnya, dimana alamatnya, dst..
>
> (2) (dilihat dari kutipan "motto" di akhir surat anda);
> sepertinya anda belum sadar bahwa anda sedang berada
> di Milis BELAJAR-EXCEL (BeExcel) bukan milis lain
> ("toko sebelah").
> =======================================================
>
Reply | Threaded
Open this post in threaded view
|

Fwd: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat

iHaps
saya kok hampir yakin UDF ini buatan mas Kid..
( ditilik dari:
  kerapihan blok, dan konsistensi penamaan Variables / Arguments,
  type long didahului dengan l, type string didahulu dengan s dst...)
Benar atau Betul mas Kid..?

Hanya saja, saat ditayangkan mungkin Haps sedang ngantuk.... ( he he)

Bagaimana ya (dlm rangka memenuhi keinginan dayat).. kalau seandainya
  If LenB(sPath) = 0 Then
     sFilePath = ThisWorkbook.Path & "\"
diganti dengan
  If LenB(sPath) = 0 Then
     sFilePath = CurDir & "\"

kindest regards,
- i -


---------- Forwarded message ----------
From: i Haps <[hidden email]>
Subject: Re: [belajar-excel] List File Aray satu folder tanpa menuliskan
alamat

2012/2/11 nor hidayat <[hidden email]>

> Dear Exceler
> Mohon bantuannya
> Saya pernah buka kiriman group excel mengenai getlist menggunakan array
> dengan scrip sebagai berikut :
>
> Public Function GetFileList( _
>        Optional sPath As String = vbNullString, _
>        Optional sKriteria As String = vbNullString, _
>        Optional lResultAsArray As Long = 0) As Variant
> Dim sFile As String, sFilePath As String, sCari As String
> Dim sList As String, sResult() As String
> Application.Volatile
> If LenB(sPath) = 0 Then
>   sFilePath = ThisWorkbook.Path & "\"
> Else
>   sFilePath = sPath
>   If Right$(sPath, 1) <> "\" Then
>     sFilePath = sFilePath & "\"
>   End If
> End If
> If LenB(sKriteria) = 0 Then
>   sCari = "*"
> Else
>   sCari = sKriteria
> End If
> Application.DisplayAlerts = False
> sFile = Dir$(sFilePath & sCari)
> Do While LenB(sFile) <> 0
>   sList = sList & sFile & "|"
>   sFile = Dir$
> Loop
> If Right$(sList, 1) = "|" Then
>   sList = Left(sList, Len(sList) - 1)
> End If
> If lResultAsArray <> 0 Then
>   GetFileList = WorksheetFunction.Transpose(Split(sList, "|"))
> Else
>   GetFileList = sList
> End If
> Application.DisplayAlerts = True
> End Function
Reply | Threaded
Open this post in threaded view
|

Bls: Fwd: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat

dayatshogun46
Setelah diotak atik sFilePath = ThisWorkbook.Path & "\"

maka saya ganti sFilePath = ThisWorkbook.Path & "\"

Data ini berguna untuk setiap kita memindahkan folder maka yang yang di listkan isi folder itu saja tanpa menuliskan alamat.

Terimakasih atas saran dan masukannya

Salam
Nor Hidayat



--- Pada Sab, 11/2/12, i Haps <[hidden email]> menulis:

Dari: i Haps <[hidden email]>
Judul: Fwd: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat
Kepada: "BeExcel" <[hidden email]>
Tanggal: Sabtu, 11 Februari, 2012, 4:36 PM
















 



 


   
     
     
      saya kok hampir yakin UDF ini buatan mas Kid..( ditilik dari:

  kerapihan blok, dan konsistensi penamaan Variables / Arguments,  type long didahului dengan l, type string didahulu dengan s dst...)

Benar atau Betul mas Kid..?
Hanya saja, saat ditayangkan mungkin Haps sedang ngantuk.... ( he he)


Bagaimana ya (dlm rangka memenuhi keinginan dayat).. kalau seandainya  

  If LenB(sPath) = 0 Then
     sFilePath = ThisWorkbook.Path & "\"


diganti dengan  If LenB(sPath) = 0 Then


     sFilePath = CurDir & "\"



kindest regards,- i -



---------- Forwarded message ----------

From: i Haps <[hidden email]>
Subject: Re: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat



2012/2/11 nor hidayat <[hidden email]>


> Dear Exceler
> Mohon bantuannya
> Saya pernah buka kiriman group excel mengenai getlist menggunakan array
> dengan scrip sebagai berikut :
>
> Public Function GetFileList( _

>        Optional sPath As String = vbNullString, _
>        Optional sKriteria As String = vbNullString, _
>        Optional lResultAsArray As Long = 0) As Variant


> Dim sFile As String, sFilePath As String, sCari As String
> Dim sList As String, sResult() As String
> Application.Volatile
> If LenB(sPath) = 0 Then
>   sFilePath = ThisWorkbook.Path & "\"


> Else
>   sFilePath = sPath
>   If Right$(sPath, 1) <> "\" Then
>     sFilePath = sFilePath & "\"
>   End If
> End If
> If LenB(sKriteria) = 0 Then


>   sCari = "*"
> Else
>   sCari = sKriteria
> End If
> Application.DisplayAlerts = False
> sFile = Dir$(sFilePath & sCari)
> Do While LenB(sFile) <> 0
>   sList = sList & sFile & "|"


>   sFile = Dir$
> Loop
> If Right$(sList, 1) = "|" Then
>   sList = Left(sList, Len(sList) - 1)
> End If
> If lResultAsArray <> 0 Then
>   GetFileList = WorksheetFunction.Transpose(Split(sList, "|"))


> Else
>   GetFileList = sList
> End If
> Application.DisplayAlerts = True
> End Function


   
     

   
   






 








Reply | Threaded
Open this post in threaded view
|

Re: Fwd: [belajar-excel] List File Aray satu folder tanpa menuliskan alamat

iHaps
*dayat said:*
*>> Setelah diotak atik *
>> sFilePath = ThisWorkbook.Path & "\"
*>> maka saya ganti *
>> sFilePath = ThisWorkbook.Path & "\"


yang  D-I-G-A-N-T-I  apanya ya ??
dari aslinya menurut penglihatanku memang sudah bLegittu !

Mohon dengan sangat diberi penjelasan/ dijawab...

-i-


2012/2/13 nor hidayat <[hidden email]>

>
>   Setelah diotak atik  sFilePath = ThisWorkbook.Path & "\"
> maka saya ganti      sFilePath = ThisWorkbook.Path & "\"
>
> Data ini berguna untuk setiap kita memindahkan folder maka yang yang di
> listkan isi folder itu saja tanpa menuliskan alamat.
> Terimakasih atas saran dan masukannya
>
> Salam
> Nor Hidayat
>
>
> --- Pada Sab, 11/2/12, i Haps <[hidden email]> menulis:
> Bagaimana ya (dlm rangka memenuhi keinginan dayat).. kalau seandainya
>   If LenB(sPath) = 0 Then
>      sFilePath = ThisWorkbook.Path & "\"
> diganti dengan
>   If LenB(sPath) = 0 Then
>      sFilePath = CurDir & "\"
>
> kindest regards,
> - i -
>