我想创建一个脚本来更改给定文件夹中每个excel文件以及子文件夹中所有文件的单元格。
我认为我的代码应该可以工作,但是由于安全问题(我认为该文件具有启用内容锁定,即使我在excel中禁用了该锁定)也无法刷新工作表)。我想知道是否有人可以帮助我弄清楚发生了什么并帮助我找到解决方案?
strDate = "20190831"
strPath = "C:\lefuras_test"
Dim objFSO,objRootFolder,objFil,objXl,objWb,objExcel
Set objExcel = CreateObject("Excel.Application")
Set objFSO = CreateObject("scripting.filesystemobject")
Set objRootFolder = objFSO.getfolder(strPath)
SearchSubFolder objRootFolder
Sub SearchSubFolder(objRootFolder)
For Each objFil In objRootFolder.Files
If InStr (objFil.Type,"Excel") > 0 Then
Set Wb = objExcel.Workbooks.Open(objFil.Path)
Wb.Sheets("CONFIG").Cells(3,2).Value=strDate
DisableBackgroundConncections Wb
Wb.RefreshAll
p = objFil.Path
Wb.SaveAs Replace(p,"C:\lefuras_test","C:\lefuras_test_output")
Wb.Saved = True
wscript.echo Wb.name&" elkeszult!"
Wb.Close True
End If
Next
For Each objFolder in objRootFolder.SubFolders
SearchSubFolder objFolder
Next
End Sub
Sub DisableBackgroundConncections(Wb)
For Each connection in Wb.Connections
If connection.Type = xlConnectionTypeOLEDB Then
connection.OLEDBConnection.BackgroundQuery = False
End If
Next
End Sub
objExcel.Quit
wscript.echo "Folyamat vege."