Private Sub Command42_Click()
Dim f As Object
Dim strFile As String
Dim strFolder As String
Dim varItem As Variant
Dim P As String
Set f = Application.FileDialog(msoFileDialogSaveAs)
f.AllowMultiSelect = False
f.InitialFileName = "H:\Chuck M\UCPP\"
If f.Show Then
For Each varItem In f.SelectedItems
strFile = Dir(varItem)
strFolder = Left(varItem, Len(varItem) - Len(strFile))
P = strFolder & strFile
DoCmd.TransferText acExportDelim, "UCCP Export Specification", "MOM_Table Export", P
Next
End If
Set f = Nothing
End Sub
我目前有这个但是我收到错误"方法' FileDialog'对象' _Application'失败。
我已经做了一些谷歌搜索,但无法找到帮助我的东西。
我只是想让这个盒子允许我将逗号分隔的表格导出保存到我想要的位置,并允许我们为其命名,这样我们就不会让每个日常出口混淆。
非常感谢任何有关此事的帮助。
答案 0 :(得分:2)
如果出现以下情况,您可能会收到错误:
Option Explicit
,msoFileDialogSaveAs
常量名称。要解决这个问题,要么......
(a)验证您的VBA项目是否具有...
的有效参考Microsoft Office nn.n对象库
...其中nn.n
对应于您已安装的Office版本(例如,对于Office 2010,它是14.0
。)
(b)如果失败,您可以使用
Dim f As Object
Const msoFileDialogSaveAs = 2
Set f = Application.FileDialog(msoFileDialogSaveAs)
提示:始终对您创建的每个模块使用Option Explicit
。这会让你很头疼。要使其成为默认值,请在VBA编辑器中选择Tools > Options
,然后选择“需要变量声明”。但是,这不会将Option Explicit
添加到任何现有模块中;你必须自己做。