VB6中的查找函数

VB6中的查找函数,vb6,Vb6,我在excel文件中有一个名为Employee_States_file的表。该表包含两列Name和States。这两列都充满了数据。省表包含NE、WA等州的缩写。我有另一个excel文件,名为States_file,其中包含一个表,该表有两列:缩写和FullStateName。此表被视为查找表,用于根据缩写查找州全名。现在,我想在VB6中编写一个代码,这样当用户单击一个按钮时,excel文件Employee_States表中的所有缩写名称都会根据excel工作表States_文件的查找表更改为完

我在excel文件中有一个名为Employee_States_file的表。该表包含两列Name和States。这两列都充满了数据。省表包含NE、WA等州的缩写。我有另一个excel文件,名为States_file,其中包含一个表,该表有两列:缩写和FullStateName。此表被视为查找表,用于根据缩写查找州全名。现在,我想在VB6中编写一个代码,这样当用户单击一个按钮时,excel文件Employee_States表中的所有缩写名称都会根据excel工作表States_文件的查找表更改为完整的状态名称。 这有意义吗?
请提供帮助,

如果允许您将其转换为csv文件逗号分隔的文本文件,您可以使用Jet数据库引擎进行常规SQL联接

我用它来建立连接

Public Function OpenTextConnection(ByVal FileName As String) As Connection
    Dim FSO As FileSystemObject
    Dim DBFolder As String
    Dim TS As TextStream

    Set FSO = New FileSystemObject
    DBFolder = FSO.GetParentFolderName(FileName)

    If FSO.FileExists(FSO.BuildPath(DBFolder, "Schema.ini")) Then
        FSO.DeleteFile (FSO.BuildPath(DBFolder, "Schema.ini"))
    End If

    Set TS = FSO.CreateTextFile(FSO.BuildPath(DBFolder, "Schema.ini"))
    TS.WriteLine "[" & FSO.GetFileName(FileName) & "]"
    TS.WriteLine "Format=CSVDelimited"
    TS.WriteLine "ColNameHeader = True"
    TS.WriteLine "MaxScanRows = 0"
    TS.Close

    Set OpenTextConnection = New Connection


    If FSO.FolderExists(DBFolder) Then
        OpenTextConnection.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & DBFolder & ";Extended Properties=""text;HDR=Yes;FMT=Delimited;"";"
    Else
        MsgBox DBFolder & " Does not exists.", vbExclamation
    End If

End Function
每个文件都是连接中的一个表,您可以执行SQL连接。请注意,该示例只是简单地打开一个表。您可以使用任何有效的SQL语法

Dim DB1 As Connection
Dim TB As Recordset
Dim FSO As FileSystemObject
Dim tImport As New DBImportList
Set FSO = New FileSystemObject
Set tImport = New DBImportList
If FSO.FileExists(FileName) Then
    Set DB1 = OpenTextConnection(FileName)
    Set TB = New Recordset

    TB.Open "SELECT * FROM [" & FSO.GetFile(FileName).Name & "]", DB1, adOpenKeyset, adLockOptimistic, adCmdText

End If

是否有方法使用.xls文件而不将其转换为csv?仅当用户安装了Microsoft Office时。您可以使用Excel导出的com库直接访问.xls文件。我不建议将其用于简单的表格查找,因为它会引入不必要的依赖项。这些是Excel文件吗?XLS还是XLSX?为什么不直接在Excel中使用它呢?我确实使用了VLOOKUP函数。然而,它让我抓狂,因为它可以处理大约一半的记录,然后它给了我一个错误:无法获取工作表函数类的vlookup属性。我被告知这个错误意味着VLOOKUP函数在查找表的第一列中没有找到匹配的值。当我手动更改该值并用以前找到的值替换它时,它仍然挂在那里。我不知道为什么它会给我那个错误信息。我正在使用XLS文件。有什么想法吗。我不能直接用Excel来做。