如何在使用取消请求停止代码时删除 运行-时间错误“3464”
How to remove Run-time error '3464' when stopping code with a cancellation request
我的代码 (MS Access VBA) 有一个小问题。这没什么大不了的,但是这不是取消请求应该看到的东西。
代码的初始部分允许我提取图片的路径和文件名,效果非常好。
Private Sub Image2_DblClick(Cancel As Integer)
'Source:
Dim f As Object
Dim strFile As String
Dim strFolder As String
Dim varItem As Variant
Set f = Application.FileDialog(3)
f.AllowMultiSelect = False
If f.Show Then
For Each varItem In f.SelectedItems
strFile = Dir(varItem)
strFolder = Left(varItem, Len(varItem) - Len(strFile))
TempVars.Add "imagePath2", strFolder & strFile
Next
End If
Set f = Nothing
下一部分将该字符串插入到我的查询中的指定字段中。这也很漂亮。
With DoCmd
.SetWarnings False
.OpenQuery "updateQueryVarietiesImage2"
.SetWarnings True
DoCmd.RunCommand acCmdRefresh
Me.Requery
End With
End Sub
我遇到的问题是如果我取消从生成的弹出窗口中选择图像 window。取消后我得到 "Run-time error '3464': Data type mismatch in criteria expression"
点击 "Debug" 突出显示
.OpenQuery "updateQueryVarietiesImage2"
我确定该错误与查询因取消而未 运行 这一事实有关,但我不希望错误出现。如果用户点击取消,我应该使用什么代码来阻止错误出现?
如果没有选择文件,你能不能跳过代码:
If f.SelectedItems.Count > 0 Then
With DoCmd
.SetWarnings False
.OpenQuery "updateQueryVarietiesImage2"
.SetWarnings True
.RunCommand acCmdRefresh
End With
Me.Requery
End If
我的代码 (MS Access VBA) 有一个小问题。这没什么大不了的,但是这不是取消请求应该看到的东西。
代码的初始部分允许我提取图片的路径和文件名,效果非常好。
Private Sub Image2_DblClick(Cancel As Integer)
'Source:
Dim f As Object
Dim strFile As String
Dim strFolder As String
Dim varItem As Variant
Set f = Application.FileDialog(3)
f.AllowMultiSelect = False
If f.Show Then
For Each varItem In f.SelectedItems
strFile = Dir(varItem)
strFolder = Left(varItem, Len(varItem) - Len(strFile))
TempVars.Add "imagePath2", strFolder & strFile
Next
End If
Set f = Nothing
下一部分将该字符串插入到我的查询中的指定字段中。这也很漂亮。
With DoCmd
.SetWarnings False
.OpenQuery "updateQueryVarietiesImage2"
.SetWarnings True
DoCmd.RunCommand acCmdRefresh
Me.Requery
End With
End Sub
我遇到的问题是如果我取消从生成的弹出窗口中选择图像 window。取消后我得到 "Run-time error '3464': Data type mismatch in criteria expression"
点击 "Debug" 突出显示
.OpenQuery "updateQueryVarietiesImage2"
我确定该错误与查询因取消而未 运行 这一事实有关,但我不希望错误出现。如果用户点击取消,我应该使用什么代码来阻止错误出现?
如果没有选择文件,你能不能跳过代码:
If f.SelectedItems.Count > 0 Then
With DoCmd
.SetWarnings False
.OpenQuery "updateQueryVarietiesImage2"
.SetWarnings True
.RunCommand acCmdRefresh
End With
Me.Requery
End If