Ben şuna benzer bir vbscript işlevi yazıyorum:Listeler
Public Function fnGetXLSFileCount()
Dim fso, src, folder, file, fileList
Set fileList = CreateObject("System.Collections.ArrayList")
Set fso = CreateObject("Scripting.FileSystemObject")
src = "\\myserver\myfolder"
Set folder = fso.GetFolder(src)
For Each file In folder.files
If LCase(fso.GetExtensionName(file)) = "xlsx" Then
fileList.Add file.name
End If
Next
Set fnGetXLSFileCount = fileList
End Function
Eğer ben bir ArrayList oluşturarak ve ardından mevcut excel dosyaların tümü isimlerini ekliyorum görebileceğiniz gibi belirtilen bir klasör.
Daha sonra bu işlevi çağırıp, döndürülecek bir nesne beklediğimi belirtmek için İşleci ayarla'yı kullanıyorum. Nesnede sayımı kontrol ettiğimde doğru gibi görünüyor. İsim çekmeye çalıştığımda orada hiçbir şey yok. Ne yanlış yapıyorum burada?
For each file in XLSFileList
name = file.Item(0)
Next
:
Item
özelliği doğrudan koleksiyonundan özel bir öğeye erişmek için kullanılabilir: Koleksiyona Sadece isimleri atamak beri sadece adını almak için döngü değişkeni kullanan Evet,() isteğe bağlı. –