ListObject的ADO查询仅返回错误的RecordCount为NULL值

我具有以下过程,旨在通过ADO查询ListObject。

Dim cnn As ADODB.Connection
Set cnn = New ADODB.Connection
cnn.ConnectionString = "Provider=microsoft.ACE.OLEDB.12.0;Data Source=" & ThisWorkbook.FullName & ";Extended Properties=""Excel 12.0;HDR=Yes;IMEX=1"";"
cnn.Open

Dim tblRange As String
tblRange = quoteWK.ListObjects("quoteWKStateInfo").Range().Address(False,False)

Dim strSQL As String
strSQL = "SELECT WkStateCd FROM [quoteWK$" & tblRange & "]"

Dim rs As ADODB.Recordset
Set rs = New ADODB.Recordset

rs.Open strSQL,cnn,adOpenStatic,adLockPessimistic

但是,当表有198个时,记录集仅返回23条记录。此外,每个字段的值都为空(debug.print rs.Fields(0).Value)。

我已经在网上进行了很多搜索,但看不到该问题。我还玩过CursorTypeLockType。在下面放置了我认为重要的信息以及表格图片。

?tblRange | Q4:AG206
?strSQL | SELECT WkStateCd FROM [quoteWK$Q4:AG206]
?rs.Fields(0).Value | Null
?rs.RecordCount | 23 
?rs.Fields.Count | 1 'this is correct

另外,FWIW,当我对表运行SELECT DISTINCT时,没有返回任何记录。 WkStateCd列中有15个不同的状态。

ListObject的ADO查询仅返回错误的RecordCount为NULL值

catheone 回答:ListObject的ADO查询仅返回错误的RecordCount为NULL值

暂时没有好的解决方案,如果你有好的解决方案,请发邮件至:iooj@foxmail.com
本文链接:https://www.f2er.com/3150639.html

大家都在问