[請問] vbs程序呼叫或引數不正確

作者: vernc (cralvin)   2023-04-12 12:09:22
Dim fso, folder, files
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder("R:\e") ' 取代為目標目錄的路徑
Set files = folder.Files
msgbox files.Count
If files.Count > 0 Then ' 檢查目錄下是否有檔案
files(files.Count - 1).Delete ' 刪除目錄下最後一個檔案
End If
Set files = Nothing
Set folder = Nothing
Set fso = Nothing
GPT寫的,第8行出問題
WScript.Echo files.Item(0).Name
上面這行也"程序呼叫或引數不正確"
那位教教是那出錯?
thx
作者: eva19452002 (^^)   2023-04-12 21:11:00
可以請chatgpt幫你debug
作者: spfy (spfy)   2023-04-12 22:39:00
我不會VB 這好像也不算小軟體版的業務 但看起來有可能是files.Item已經沒有物件了你還取0就直接錯誤
作者: kobe8112 (小B)   2023-04-13 11:18:00
樓上是錯誤的,前一行有用if判斷集合內有物件才會進去VBA裡面你用FileSystemObject取到的File Collection不可以用索引進行存取,鍵值是檔案路徑的字串我不會VB,所以我只會用笨蛋解法你原先程式碼取得File Collection後,使用Foreach方式將每個檔案放到自己額外宣告的Collection物件即可另外記得你如果要用索引存取,是從1開始,不是從0類似這樣: https://i.imgur.com/1IELCRx.png

Links booklink

Contact Us: admin [ a t ] ucptt.com