Я намагаюся отримати записи з бази даних і заповнити їх у excel. Ось як я отримую дані та заповнюю їх (зверніть увагу: запит спрощений, я не можу просто ORDER BY DESC
):
Sub FillPersons(ByRef connection As ADODB.connection)
Dim recordSet As ADODB.recordSet
Set recordSet = New ADODB.recordSet
Dim sql As String
sql = "SELECT TOP 2 Id FROM Persons"
recordSet.activeconnection = connection
recordSet.Open sql
Dim a As Variant
If Not recordSet.EOF Then
a = recordSet.GetRows
a.Reverse (a)
Sheet1.Cells(10, 2).Resize(UBound(a, 1) + 1, UBound(a, 2) + 1).Value = a
End If
'Sheet1.Range("B10").CopyFromRecordset recordSet
recordSet.Close
connection .Close
Set connection = Nothing
End Sub
На жаль, результат виглядає приблизно так:
B10B11
2 1
замість
B10B11
1 2
Я намагався повернути назад, a
але, на жаль, я не можу змусити його працювати.
Чи є хитрість, щоб отримати правильний результат?
Спасибі заздалегідь
Немає достатньої кількості даних для встановлення певної картини, але я здогадуюсь, що це в правильному порядку, а в зворотному?
—
Jonno