SolidWorks机械工程师网——最大的SolidWorks学习平台

标题: VBA选择文件夹对话框 [打印本页]

作者: lhl-RT    时间: 2021-10-22 16:05
标题: VBA选择文件夹对话框
第一种方法是使用Windows API 调用显示对话框。第二种方法用“Microsoft shell 控件和自动化 ”对象库。
第一种方法可以在Windows的任意版本使用(win95或更晚),这种方法可定位到开始文件夹,通过操作注册表,记录上次所选文件夹,再次启用后,可直接跳转到上次所选。
第二种方法需要用户安装了Internet Explorer 5或更高版本,这种方法,通过多次尝试,无法定位到开始文件夹,这样就不太方便,选择起来就不够人性化。

SelectFolderDialog.zip (18.03 KB, 下载次数: 118, 售价: 10 金币)

使用Shell对象的BrowseForFolder方法打开选择文件夹对话框.zip (8.91 KB, 下载次数: 74, 售价: 5 金币)

第三种方法,利用office控件,这种方法,实际运行起来,比较慢。
具体参见:VBA多选文件选择对话框 (swbbsc.com)9楼
  1. Sub SelectFolder文件夹()
  2.     '选择单一文件夹
  3.     ConnectExcel True
  4.    
  5.     Set swApp = CreateObject("SldWorks.Application") '启动SW


  6.     With ExApp.FileDialog(4)
  7.         .Title = "请选择要查找的文件夹"
  8.         .InitialFileName = swApp.GetCurrentWorkingDirectory '设置文件对话框中初始显示的路径是sw当前文件路径
  9. '        .InitialFileName = "::{20D04FE0-3AEA-1069-A2D8-08002B30309D}"       '获取上一次打开的路径

  10.         If .Show = -1 Then
  11.         'FileDialog 对象的 Show 方法显示对话框,并且返回 -1(如果您按 OK)和 0(如果您按 Cancel)。
  12.             MsgBox "您选择的文件夹是:" & .SelectedItems(1), vbOKOnly + vbInformation, "信息"
  13.         End If
  14.     End With
  15. End Sub
复制代码













作者: UDF998    时间: 2021-10-23 10:49
学习的好资料,感谢感谢
作者: qqfly332211    时间: 2021-10-26 12:24
感谢楼主分享,很不错!
作者: 126505118    时间: 2021-10-26 17:58
下载下来看看,应该会有用!
作者: 淡淡的雲    时间: 2021-10-27 08:28
好东西,努力学习学习!
作者: lznlsd    时间: 2021-10-27 13:38
走过路过,不要错
作者: qxzch    时间: 2021-10-27 16:56
受教了,谢谢!
作者: 打铁名酱007    时间: 2021-11-18 08:26
为什么我打开宏,里面是红色的
作者: lhl-RT    时间: 2021-11-18 09:32
打铁名酱007 发表于 2021-11-18 08:26
为什么我打开宏,里面是红色的

针对win10以及win10以下版本,为了保证程序在这两种系统中都可以正常运行,程序中增加了条件编译语句(条件编译通常用来编译不同平台上的同一个程序)。如果你的系统为win10,那么在win10以下版本中运行的条件语句会变成红色。
作者: jiacai007    时间: 2021-12-21 20:57
很不错,顶一下!
作者: 浅蓝色的天空    时间: 2022-6-1 00:08
楼主辛苦了!
作者: hejunxin888    时间: 2022-8-26 16:07
楼主辛苦了!
作者: hejunxin888    时间: 2022-8-26 16:07
楼主辛苦了!
作者: 384432485    时间: 2022-8-26 16:41
楼主太有才了,膜拜中……
作者: moscow19870105    时间: 2022-8-27 10:32
走过路过,不要错过
作者: moscow19870105    时间: 2022-8-27 10:32
走过路过,不要错过
作者: moscow19870105    时间: 2022-8-27 10:36
SolidWorks2020 用此宏要崩溃
作者: lider_2010    时间: 2023-8-28 12:24
楼主太有才了,膜拜中……
作者: FMVPcurry30    时间: 2023-8-28 17:32
感谢楼主分享,很不错!
作者: rex2023    时间: 2023-9-30 07:15


好品数字
感谢楼主分享,很不错!
作者: 随遇而安9528    时间: 2024-1-17 21:48
好好学习,天天向上!
作者: 141000    时间: 2024-3-4 11:07
这浏览打开文件夹,省去了复制粘贴地址的流程。
作者: sunsu168    时间: 2024-5-17 15:16
你好,lhl-RT    请问如果是保存文件让 选择文件夹,需要这种带侧边栏资源管理器的对话框的(有收藏地址方便点击),宏代码应该是怎么写的




欢迎光临 SolidWorks机械工程师网——最大的SolidWorks学习平台 (https://www.swbbsc.com/) Powered by Discuz! X3.2