gpt4 book ai didi

vba - 从 SQL 查询将列名称提取到 Excel 中

转载 作者:行者123 更新时间:2023-12-01 18:41:27 27 4
gpt4 key购买 nike

我正在使用 Excel 从 SQL 数据库中提取数据。我使用了另一个问题中的代码,效果很好。现在,除了实际表之外,我还想从表中提取列名。我发现我可以使用 For Each fld 循环获取名称。然而,在 Excel 中水平填充它们仍然存在问题,因为列数可能会改变 - 所以我想我还需要另一个 For every 循环或类似的东西。

Sub GetDataFromADO()

'Declare variables'
Set objMyConn = New ADODB.Connection
Set objMyCmd = New ADODB.Command
Set objMyRecordset = New ADODB.Recordset

'Open Connection'
objMyConn.ConnectionString = "Provider=SQLOLEDB;Data Source=localhost;User ID=abc;Password=abc;"
objMyConn.Open

'Set and Excecute SQL Command'
Set objMyCmd.ActiveConnection = objMyConn
objMyCmd.CommandText = "select * from myTable"
objMyCmd.CommandType = adCmdText
objMyCmd.Execute

'Loop Names'
' WHAT TO DO HERE????'

'Open Recordset'
Set objMyRecordset.ActiveConnection = objMyConn
objMyRecordset.Open objMyCmd

'Copy Data to Excel'
ActiveSheet.Range("A1").CopyFromRecordset (objMyRecordset)

End Sub

最佳答案

我常用的代码非常相似:

For intColIndex = 0 To objMyRecordset.Fields.Count - 1 
Range("A4").Offset(0, intColIndex).Value = objMyRecordset.Fields(intColIndex).Name
Next

关于vba - 从 SQL 查询将列名称提取到 Excel 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4190515/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com