Функция поиска в VB6 - PullRequest
       1

Функция поиска в VB6

1 голос
/ 29 сентября 2010

У меня есть таблица в Excel-файле с именем «Employee_States_File». Эта таблица содержит два столбца Name и States.Оба столбца заполнены данными.Таблица провинции содержит аббревиатуру штатов, таких как «NE, WA» и т. Д.У меня есть другой файл Excel под названием «States_File», который содержит таблицу с двумя столбцами: Abbreviation и FullStateName.Эта таблица считается справочной таблицей для поиска полных имен состояний на основе аббревиатуры.Теперь я хочу написать код в VB6, чтобы при нажатии пользователем кнопки все имена аббревиатур в таблице файла Excel «Employee_States» менялись на полные имена состояний на основе таблицы поиска на листе Excel »States_File».имеет ли это смысл?Пожалуйста, помогите,

1 Ответ

0 голосов
/ 29 сентября 2010

Если вам разрешено преобразовывать их в файлы CSV (текстовые файлы с разделителями-запятыми), вы можете использовать ядро ​​Jet Database и выполнять обычные объединения 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
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...