ODAC를 통해 oracle 데이터베이스에 연결된 VB를 사용하여 Excel 시트를 새로 고치는 것에 대한 의견을 공유하십시오.VB를 사용하여 새로 고침 가능한 Excel 시트를 새로 고치는 방법
내 코드는 다음과 같습니다. 현재 문제는 백그라운드 쿼리를 새로 고치기 전에 파일이 저장되는 것입니다.
Set oExcel = CreateObject("Excel.Application")
' Disable Excel UI elements
oExcel.Visible = False
oExcel.DisplayAlerts = False
oExcel.AskToUpdateLinks = False
oExcel.AlertBeforeOverwriting = False
Set oWorkbook = oExcel.Workbooks.Open("C:\Excel\InitialRefreshableSheet.xlsx")
oWorkbook.RefreshAll
oWorkbook.WorkSheets(1).Cells(1, 1).Value = Now()
DStr = FormatDateTime(Now, vbLongDate)
oWorkbook.Saveas ":\Excel\" & Dstr &".xlsx"
oWorkbook.Close
oExcel.Quit
새로 고침 동작이 완료 될 때까지 일시 중지하도록 vbs 스크립트에 지시하는 방법이 있습니까? 다음과 같이
For Each wks In oWorkbook.Worksheets
wks.Range("Xy").ListObject.QueryTable.Refresh _
BackgroundQuery = False
Next 'wks
또는 일반적으로 :
For Each wks In oWorkbook.Worksheets
For Each qs In wks.QueryTables
qs.Refresh BackgroundQuery = False
Next 'qs
Next 'wks