[英]VB Script RefreshAll in folder (with exception)
編輯更具體:
下面的VBScript
遍歷整個文件夾, 在那里打開每個* .XLSM文件 ,刷新所有數據連接並逐個保存更新的文件。 文件也受密碼保護,但並不重要。
如何根據部分或整個文件名增強文件夾中AVOID文件的代碼? 例如,避免使用以.xlsm
擴展名結尾的以z
結尾的文件名。
位於同一文件夾中的文件的預期結果:
abc123.xlsm(refresh); abc123z.xlsm(避免); file.xlsm(refresh); testz.xlsm(避免)
Set fso = CreateObject("Scripting.FileSystemObject")
Set xl = CreateObject("Excel.Application")
xl.Visible = False
For Each f In fso.GetFolder("C:\test\").Files
If LCase(fso.GetExtensionName(f.Name)) = "xlsm" Then
Set wb = xl.Workbooks.Open(f.Path ,,,,,"x")
wb.RefreshAll
wb.Save
wb.Close
End If
Next
xl.Quit
你可以嘗試使用split命令。
file_path =abc123.xlsm
file_name =split(file_path,".")
file_name是一個包含2個值的數組
file_name(0)= abc123
file_name(1)= xlsm
現在你可以檢查file_name(0)=“Z”中的最后一個字符
if NOT(right(file_name(0),1)="Z") THEN
do...
ELSE
do...
END IF
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.