В этом проекте Excel я хочу скопировать всю таблицу SQL в Excel, используя этот код:
Sub search()
Dim conn As New ADODB.Connection
Dim dataset As ADODB.Recordset
Dim sqlQry As String, sConnect As String
sqlQry = "select [Project],[Machine],[Mold],[ Desc],[Model],[Name],[Repair Type],[Entry],[Date],[Time],[Details],[Status],[Division],[A. Stroke],[P. Stroke],[PIC] from [SQLTEST].[dbo].[REPAIRLOG]"
sConnect = "[redacted]"
conn.Open sConnect
Set dataset = New ADODB.Recordset
dataset.Open sqlQry, conn
Sheet1.Cells(6, 1).CopyFromRecordset dataset
dataset.Close
conn.Close
Set dataset = Nothing
End Sub
При выполнении подпрограммы отображаются только первые 10 столбцов из 16 столбцов. Что случилось с другими 6?
Редактировать:
После публикации я попытался удалить первые 10 столбцов в запросе SQL и начать с Details
и далее. Ничего не появляется.
Но затем, когда я удаляю Details
из запроса, могут появиться оставшиеся за ним столбцы. Таким образом, я могу сделать вывод, что у столбца Details
в моей базе данных есть проблемы.
Но не уверен, в чем причина. Это единственное поле в SQL, тип данных которого nvarchar(MAX)
, а все остальное - nvarchar(50)
или datetime
.