title: How to get column name in VBA?
body: <p>I have created a module where I am reading the data from SQL DB using a stored procedure and I am getting all the required data, but my requirement is that I also needs all the column name/headers too. And I can't hardcode the name because I am converting the data rows into columns in stored procedure.</p>
  
  <p>Here is the code I have written:</p>
  
  <pre><code>ConnStr = "PROVIDER=SQLOLEDB.1;"
  ConnStr = ConnStr &amp; "DATA SOURCE=" &amp; dataSrc &amp; "; INITIAL CATALOG=" &amp; iCatalog &amp; "; "
  ConnStr = ConnStr &amp; "User ID = " &amp; dbUserId &amp; "; Password = " &amp; dbPassword
  
  On Error GoTo ErrHandler
  
  DBConn.Open ConnStr
  
  ' Create a recordset object.
  Dim rsCounter As ADODB.Recordset
  Set rsCounter = New ADODB.Recordset
  Dim startDate As String, endDate As String, query As String
  
  query = "Exec ReadCntrs 0, '12/01/2011', '12/30/2011'"
  
  With rsCounter
      ' Assign the Connection object.
      .ActiveConnection = DBConn
  
      .Open query
      ' Copy the records into cell A1 on Sheet1.
      Sheet1.Range("A1").CopyFromRecordset rsCounter
  
      ' Tidy up
      .Close
  End With
  
  DBConn.Close
  Set rsCounter = Nothing
  Set DBConn = Nothing
  
  ExitHere:
      On Error Resume Next
      DBConn.Close: Set DBConn = Nothing
      Err.Clear
      Exit Sub
  
  ErrHandler:
      MsgBox Err.Number &amp; Err.Description, vbExclamation
      Resume ExitHere
  
  End Sub
  </code></pre>