有人知道如何从宏(vba)中调用 import data 内置对话框excel?

我已经尝试了 Application.Dialogs.Item(...)。显示,但我无法找到正确的对话框。 请帮忙。

提前致谢。

有帮助吗?

解决方案

我使用对话系统找到的最接近的是:

Application.Dialogs(xlDialogImportTextFile).Show

您可以通过以下方式获取对命令栏按钮的引用(至少对我来说是2k3和2k7):

Set button = Application.CommandBars.FindControl(ID:=6262)

但是在按钮上调用 Execute 方法失败了。可悲的是,简短的回答似乎是不可能的。

您可以手动添加QueryTable对象。虽然不是最佳路径,但您可以设计自己的简单界面来选择源数据。

其他提示

如果您选择对象浏览器并搜索say,xlDialogImportTextFile,您将获得可能的对话框列表。

编辑: 也许这些方面的东西都适合:

'Allow user to select text file
sf = Application _
    .GetOpenFilename("Text Files (*.txt), *.txt")
If sf <> False Then
    'Open text file
    Workbooks.OpenText sf
End If

我认为没有VBA等价物,因为在一种情况下,您将数据返回到工作表,而在另一种情况下,数据将被放入内存中的记录集。

这个kludge会为你弹出对话框,但是:

SendKeys "%ddd"
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top