1
내가 쿼리를 만들기 위해 Excel에서 VBA를 사용하고 내가 상수 PART1와Array를 상수로 바꿀 수 있습니까?
St" _
), Array(_
"efl\zv162_part1.xls
이
With ActiveSheet.ListObjects.Add(SourceType:=0, Source:=Array(Array(_
"ODBC;DSN=Excel Files;DBQ=\\St" _
), Array(_
"efl\zv162_part1.xls;DefaultDir=cesta;DriverId=1046;FIL=excel 12.0;MaxBufferSize=2048;PageTimeout=5;" _
)), Destination:=Range("$A$1")).QueryTable
.CommandText = Array(_
"SELECT `zv162_part1$`.F2, `zv162_part1$`.F4, `zv162_part1$`.F5, `zv162_part1$`.F6, `zv162_pa" _
, _
"rt1$`.F7, `zv162_part1$`.F8, `zv162_part1$`.F9, `zv162_part1$`.F10, `zv162_part1$`.F11, `zv162_part1$`.F12, `zv162_part1$`.F13, `zv162_part1$`.F14, `zv162_part1$`.F15, `zv162_part1$`.F16, `z" _
, _
"v162_part1$`.F17, `zv162_part1$`.F18, `zv162_part1$`.F19, `zv162_part1$`.F20" & Chr(13) & "" & Chr(10) & "FROM `zv162_part1$` `zv162_part1$`" & "WHERE `zv162_part1$`.F2 <> Null" _
)
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = True
.RefreshPeriod = 0
.PreserveColumnInfo = True
.ListObject.DisplayName = "Table_Query_from_Excel_Files13"
.Refresh BackgroundQuery:=False
End With
어떤 응답을 주셔서 감사합니다 교체 싶다!
나는
당신이 전체 문자열을 입력 할 수 있습니다 시도 쿼리에 대한 전체 명령을 추가? 'St'_ 앞에있는 부분'''before,'Array'는 다소 혼란 스럽습니다 .... –
매크로 레코더를 사용하여 만들었습니다 –
전체 라인을 붙여 넣을 수 있습니까? –