Excel中的SQL查询显示某些值为空
我在excel的工作表上有一个数据,我使用SQL查询数据集。 这是查询返回的列 但是,仅显示数字格式的项目,如果项目为字母数字,则为空。结果查询如下: 我已将此列格式化为文本,下面是我的连接字符串:Excel中的SQL查询显示某些值为空,sql,excel,vba,Sql,Excel,Vba,我在excel的工作表上有一个数据,我使用SQL查询数据集。 这是查询返回的列 但是,仅显示数字格式的项目,如果项目为字母数字,则为空。结果查询如下: 我已将此列格式化为文本,下面是我的连接字符串: objConnectionXL.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & ThisWorkbook.FullName & ";" & _ "Extended Pr
objConnectionXL.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & _
"Data Source=" & ThisWorkbook.FullName & ";" & _
"Extended Properties=""Excel 8.0;HDR=Yes;"";"
已使用的查询字符串:
sQueryFilteredValues = "Select [Reference] From [Data$] Where " & sFilterCriteria
我还尝试使用下面的查询字符串,但结果相同:
sQueryFilteredValues = "Select CSTR([Reference]) From [Data$] Where " & sFilterCriteria
记录集:
objRecordsetXL.Open sQueryFilteredValues, objConnectionXL, adOpenStatic, adLockOptimistic, adCmdText
其中:adOpenStatic=3,ADLOCKOPTIMIZE=3,adCmdText=&H1
我使用下面的命令将记录集复制到Excel中
rngRange.Offset(1, 0).CopyFromRecordset objRecordsetXL
如何在记录集中显示字母数字项?
谢谢 问题在于我将查询结果复制到的范围。只有源区域具有文本格式。我将查询结果复制到的范围的格式通常是,因此我猜Excel会根据第一个单元格值自动将数据转换为数字
我通过将格式更改为文本解决了此问题。这些单元格上的.NumberFormat是什么?我已将.NumberFormat设置为@。