在VBA中使用相同对话框选择文件或文件夹

问题描述 投票:4回答:2

我有一个Excel工作簿,应该在其中填充文件或文件夹路径,以便以后进行处理。我想做的是使用相同的对话框来选择所需的路径,例如如果选择了文件,则返回其路径,但是如果未选择文件,则返回当前文件夹的路径。有可能以相对简单的方式做到这一点吗?还是我需要提示,要求用户在加载浏览窗口之前是否要文件或文件夹?

我可以创建一个文件浏览对话框,例如:Application.FileDialog(msoFileDialogFilePicker)

或文件夹浏览对话框:Application.FileDialog(msoFileDialogFolderPicker)

但是我如何将两者结合起来?如果有更好的选择,则不是必须使用Application.FileDialog。谢谢大家!

excel vba excel-vba
2个回答
1
投票

我将创建一个仅带有输入框的用户窗体,当用户单击它时,调用filedialog框并用输出填充它。但是,如果用户没有单击它,而只是单击“确定”,则即使使用默认位置,也要处理if文本框=“”。这需要用户表单的知识。


0
投票

我设法在vba编辑器中重新使用插入超链接窗口,为我的过程找到了另一种方法。它会自动添加超链接,因此无需重置它。

Application.Dialogs(xlDialogInsertHyperlink).Show

然后,如果显示了超链接,则采取它,并做任何您想做的事情:D

If Range(cell).Hyperlinks.Count > 0 Then
        Link = ActiveCell.Hyperlinks(1).Address
        Activecell.Hyperlinks(1).Delete ' Don't forget to unlink :D
End If

优势

  • 将其用于网址
  • 用于文件
  • 用于文件夹
© www.soinside.com 2019 - 2024. All rights reserved.