есть необходимость в цикле выводить результаты запросов в ячейки листа Excel(запрос выводит одно значение). Запросы направляются в базу MS SQL 2000. Для решения задачи был использован следующий кусок кода:
- Код: Выделить всё
sCommandText = " blablabla "
Worksheets(sList).Cells(iY, iX).ClearContents
Worksheets(sList).Cells(iY, iX).Formula = ""
Sheets(sList).Select
Cells.Select
Range("A1").Select
With ActiveSheet.QueryTables.Add(Connection:= _
"ODBC;DRIVER=SQL Server;SERVER=" + sServName + ";UID=" + sServName + ";APP=Microsoft Office 2003;WSID=" + _
sServName + ";DATABASE=" + sDBName + ";Trusted_Connection=Yes" _
, Destination:=Sheets(sList).Cells(iY, iX))
.CommandText = sCommandText
.Name = "bla"
.FieldNames = False
.RowNumbers = False
.FillAdjacentFormulas = False
.PreserveFormatting = True
.RefreshOnFileOpen = False
.BackgroundQuery = True
.RefreshStyle = xlOverwriteCells 'xlInsertDeleteCells
.SavePassword = False
.SaveData = True
.AdjustColumnWidth = False
.RefreshPeriod = 0
.PreserveColumnInfo = True
.Refresh BackgroundQuery:=False
End With