通过Excel VBA连接到SQL Management Studio后,我有以下代码(部分IT)从SQL中的表中提取数据。
With BalanceSheet
' Assign the Connection object.
.ActiveConnection = cnPubs
' Extract the required records.
.Open "select * from Analytics.dbo.BalSheetKeyLineItemsFinal"
Sheet1.Range("A13").CopyFromRecordset BalanceSheet
' Tidy up
.Close
End With
但是,表中的列名不会显示出来。有什么方法可以在我的数据导出到Excel时包含列名吗?
谢谢!
答案 0 :(得分:4)
记录集包含您查询过的数据,因此这是您期望发生的事情。由于您使用的是.Open
和.ActiveConnection
,我假设您正在使用ADO:在这种情况下,您可以从记录集对象的Fields
集合中获取字段名称:
For i = 0 to .Fields.Count - 1
Sheet1.Range("A12").Offset(, i) = .Fields(i).Name
Next
这将在Sheet1
的第12行写下字段标题。