ByRef参数类型不匹配 - 访问VB

时间:2017-01-23 17:51:51

标签: ms-access access-vba ms-access-2010

我收到的ByRef参数类型不匹配。以下代码(varFile specificaly)突出显示错误:

Call InsertCMS_Reports_2ndSave(varFile)

这是我的表格:

选项比较数据库

'Private Sub Command0_Click()
Private Sub cmdFileDialog_Click()

'Requires reference to Microsoft Office 12.0 Object Library.

   Dim fDialog As Office.FileDialog
   Dim varFile As Variant

   'Clear listbox contents.
   'Me.FileList.RowSource = ""

   'Set up the File Dialog.
   Set fDialog = Application.FileDialog(msoFileDialogFilePicker)
   With fDialog
      'Allow user to make multiple selections in dialog box.
      .AllowMultiSelect = True

      'Set the title of the dialog box.
      .Title = "Please select one or more files"
     .InitialFileName = "C:\Users\ABCDEF\Desktop\CCCEEe CMS Reports"

      'Clear out the current filters, and add our own.

      .Filters.Clear
      '.Filters.Add "Access Databases", "*.MDB; *.ACCDB"
      .Filters.Add "Access Projects", "*.txt"
      '.Filters.Add "All Files", "*.*"

      'Show the dialog box. If the .Show method returns True, the
      'user picked at least one file. If the .Show method returns
      'False, the user clicked Cancel.
      If .Show = True Then
         'Loop through each file selected and add it to the list box.
         For Each varFile In .SelectedItems
           ' Me.FileList.AddItem varFile
         Call InsertCMS_Reports_2ndSave(varFile)
         Next
      Else
         MsgBox "You clicked Cancel in the file dialog box."
      End If
   End With
End Sub

模块代码:

Function InsertCMS_Reports_2ndSave(FileName As String)
    'DoCmd.DeleteObject CopyOfCOMPRPT_CE, "CMS_Reports_2ndSave"
     DoCmd.TransferText acImportFixed, "CMS_Reports_Import", _
    "CMS_Reports_Import", "C:\Users\A088982\Desktop\January CMS reports for Centene\FileName"
    CurrentDb.Execute "UPDATE CopyOfCOMPRPT_CE SET FileName = 'HLTH_COMPRPT_1701011028174_h0062.txt' WHERE FileName is NULL", dbFailOnError
End Function

1 个答案:

答案 0 :(得分:0)

您之所以收到此错误,是因为您已将varFile标注为变体,但您的函数需要一个字符串。试试这个:

Function InsertCMS_Reports_2ndSave(FileName)