Изменить тип данных столбца перед импортом - PullRequest
0 голосов
/ 19 июня 2019

У меня есть форма для импорта файла Excel в таблицу доступа, но в этом листе Excel есть столбец, содержащий цифры и слова, и при импорте этого файла с использованием VBA он назначает столбцу тип данных Number и создает другая таблица с именем Ошибки импорта , которая содержит строки, которые не удалось преобразовать.

Поэтому мне нужен способ изменить тип данных этого столбца перед импортом файла - я знаю, что я могу изменить этот столбец в Excel на Text перед импортом, но есть ли способ записи это в коде?

Спасибо

Sub btn_GetFileName_Click()
' Delete Old Data
On Error Resume Next
 DoCmd.DeleteObject acTable, "Table1"
'get the file name
    Debug.Print "Getting File Name"
    'Declare a variable as a FileDialog object.
    Dim fd As FileDialog

    'Set the starting look location
    Dim strComPath As String
    strComPath = "C:\"

    Dim strFilePath As String
    'Create a FileDialog object as a File Picker dialog box.
    Set fd = Application.FileDialog(msoFileDialogFilePicker)
    With fd
        .InitialFileName = strComPath
        .AllowMultiSelect = False
        .Filters.Clear
        .Filters.Add "Excel files", "*.xls*", 1

        If .Show = -1 Then
                strFilePath = .SelectedItems(1)

        Else
            'The user pressed Cancel.
            DoCmd.Hourglass (False)
            MsgBox "You must select a file to import before proceeding" ', vbOKOnly + vbExclamation, "No file Selected, exiting"
            Set fd = Nothing
            Exit Sub
        End If
    End With

    tblFileName = strFilePath
    DoCmd.TransferSpreadsheet acImport, acSpreadsheetTypeExcel9, "Table1", tblFileName, True
    MsgBox "File Imported Sucessfully"
    Set fd = Nothing
End Sub
...