我在Access中有一个VBA代码部分,该部分使用表单上的输入来运行查询(一个输入用于查询,另一个输入用于保存文件名)。由于某种原因,我收到了无效的文件路径错误,但据我所知该路径是合法的。为什么我得到错误? FileName是要从表单保存的电子表格的期望名称。这是我从访问中获得的错误信息:
Private Sub AllPaybacks_Click()
Dim getFolder As Object
Dim sLoc As String
Dim fileN As String
Set getFolder = Application.FileDialog(msoFileDialogFolderPicker)
With getFolder
.AllowMultiSelect = False
getFolder.InitialFileName = FileName.Value
fileN = getFolder.InitialFileName
If .Show = True Then
sLoc = getFolder.SelectedItems(1) & "\"
End If
End With
DoCmd.OpenQuery "PaybackQ"
DoCmd.TransferSpreadsheet acExport, , "PaybackQ", sLoc & fileN & ".xlsx", True
End Sub
我使用了错误的语法来解决这个问题。为了将表单上文本框中的数据用作文件名,我需要执行以下操作。
Private Sub AllPaybacks_Click()
Dim getFolder As Object
Dim sLoc As String
Dim fileN As String
Set getFolder = Application.FileDialog(msoFileDialogFolderPicker)
With getFolder
.AllowMultiSelect = False
fileN = Forms!PaybackSearchF!FileName
If .Show = True Then
sLoc = getFolder.SelectedItems(1) & "\"
End If
End With
DoCmd.OpenQuery "PaybackQ"
DoCmd.TransferSpreadsheet acExport, , "PaybackQ", sLoc & fileN & ".xlsx", True
End Sub
fileN = Forms!PaybackSearchF!FileName从我的表单中的文本框中正确读取了字符串。