当前位置:编程学习 > VB >>

VB EXCEL 访问 速度 检索 二分法

--------------------编程问答-------------------- 可以用 SQL 查EXCEL表示试试看

HDR=No表示第一行作为数据显示,yes为列名,如果为yes则需要用列名制定查询列,否则用Fn指定列
IMEX=1 为导入模式查询,如果单元格有混合数据应该使用该设置,参考:
http://support.microsoft.com/kb/194124/en-us?fr=1
'EXCEL SQL查询
Sub Testwindow()

    'modelsel.Show
    strexcelpath = ActiveWorkbook.Path & "\" & ActiveWorkbook.Name

    strExcelver = "excel 8.0"
    dbprovider = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & strexcelpath & _
    ";Extended Properties=" & """" & strExcelver & ";HDR=Yes;" & """"
    strQuery = "SELECT [Column1],[Column2] FROM [Sheetname$] WHERE SN = 'string'"
    Set objConnection = CreateObject("ADODB.Connection")
    Set objCommand = CreateObject("ADODB.Command")
    'objConnection.Open dbprovider
    'objRecordSet.open strQuery,objConnection,3
    'MsgBox dbprovider
    objConnection.Open dbprovider
    objCommand.ActiveConnection = objConnection
    objCommand.CommandText = strQuery
    Set objRecordSet = objCommand.Execute
    While Not objRecordSet.EOF
      MsgBox objRecordSet.Fields("Type")
      MsgBox IsNull(objRecordSet.Fields("Distribute Type"))
      objRecordSet.MoveNext
    Wend
    objConnection.Close
End Sub
--------------------编程问答-------------------- 在Do While块中加入一个DoEvents语句。 --------------------编程问答-------------------- 其实可以用sql 语句执行的 
补充:VB ,  基础类
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,