anhtuan2939
Thành viên hoạt động
- Tham gia
- 5/7/16
- Bài viết
- 165
- Được thích
- 130
Xin chào các bạn.
Mình có 1 dòng code để lấy dữ liệu từ file Excel khác thông qua ADODB, sau khi lấy dữ liệu mình muốn xử lý luôn trên mảng rồi mới gán kết quả xuống Sheet, nhưng khi lấy được dữ liệu thông qua ADODB thì hình như mảng lấy được trên này bị đảo ngược hàng thành cột, cột thành hàng. Vậy cho mình hỏi có cách nào để đảo ngược lại mảng trên ADODB không ạ?
Mình có 1 dòng code để lấy dữ liệu từ file Excel khác thông qua ADODB, sau khi lấy dữ liệu mình muốn xử lý luôn trên mảng rồi mới gán kết quả xuống Sheet, nhưng khi lấy được dữ liệu thông qua ADODB thì hình như mảng lấy được trên này bị đảo ngược hàng thành cột, cột thành hàng. Vậy cho mình hỏi có cách nào để đảo ngược lại mảng trên ADODB không ạ?
Mã:
Sub test()
Dim cnn As Object, rst As Object
Dim lsSQL As String, filename As String
Dim sArr()
filename = Sheet1.Range("B8").Value 'Duong dan va ten file
Set cnn = CreateObject("ADODB.Connection")
Set rst = CreateObject("ADODB.Recordset")
With cnn
.Provider = "Microsoft.ACE.OLEDB.12.0"
.ConnectionString = "Data Source=" & filename & ";" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"";"
.Open
End With
lsSQL = "SELECT * " & _
"FROM [EXCEL 12.0;Database=" & filename & ";HDR=Yes].[KU-KU$A2:H800000] " & _
"WHERE Tai_Khoan IS NOT NULL;"
rst.Open lsSQL, cnn
sArr = rst.GetRows
rst.Close
Set rst = Nothing
cnn.Close
Set cnn = Nothing
'Code xu ly mang sArr
End Sub