|
*停權中*
|
EXCEL的VBA語法問題
用Excel巨集VBA的部分要撈資料
可是錄出來的VBA只要稍微改動
就無法執行
本來是
________________
Workbooks.Add
Sheets.Add
Sheets("Sheet1").Name = "GBTR001"
Sheets("Sheet2").Name = "GBTR002"
Sheets("Sheet3").Name = "GBTR003"
Sheets("Sheet4").Name = "GBTR004"
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DSN=Excel Files;DBQ=C:\HF\POCN.xls;DefaultDir=C:\HF;DriverId=790;MaxBufferSize=2048;PageTimeout=5;" _
, Destination:=Sheets("GBTR04").Range("A1"))
.CommandText = Array( _
"SELECT `Sheet1$`.GLASS_ID, `GBTR04$`.TRANSDT, `GBTR04$`.`ETCH BATH NO#_EDC`, `GBTR04$`.PFCD, `GBTR04$`.EQP_ID, `Sheet1$`.GlassThick_001, `Sheet1$`.GlassThick_002, `Sheet1$`.GlassThick_003, `Sheet1$`.G" _
, _
"lassThick_004, `Sheet1$`.GlassThick_005, `Sheet1$`.GlassThick_006, `Sheet1$`.GlassThick_007, `Sheet1$`.GlassThick_008, `Sheet1$`.GlassThick_009" & Chr(13) & "" & Chr(10) & "FROM `C:\HF\GBTR04`.`GBTR04$` `GBTR04$`, `C:\HF\POCN`.`" _
, "Sheet1$` `Sheet1$`" & Chr(13) & "" & Chr(10) & "WHERE `GBTR04$`.GLASS_ID = `Sheet1$`.GLASS_ID")
.Name = "來自 Excel Files 的查詢"
.FieldNames = True
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With
___________________________________
只是稍微修改
將GBTR04改成GBTR03
就會顯示
"陣列索引超出範圍" or "查詢的表單不存在"
請問是哪邊需要修正
謝謝
|