国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

腳本之家,腳本語言編程技術及教程分享平臺!
分類導航

Python|VBS|Ruby|Lua|perl|VBA|Golang|PowerShell|Erlang|autoit|Dos|bat|

香港云服务器
服務器之家 - 腳本之家 - VBA - VBA 瀏覽文件夾對話框調用的幾種方法

VBA 瀏覽文件夾對話框調用的幾種方法

2020-05-31 11:17VBA教程網 VBA

VBA 瀏覽文件夾對話框調用實現代碼。大家可以根據需要選擇。

1、使用API方法

復制代碼 代碼如下:


'【類型聲明】
Private Type BROWSEINFO
hWndOwner As Long
pIDLRoot As Long
pszDisplayName As Long
lpszTitle As Long
ulFlags As Long
lpfnCallback As Long
lParam As Long
iImage As Long
End Type
'【API聲明】
Private Declare Function SHGetPathFromIDList Lib "shell32.dll" _
Alias "SHGetPathFromIDListA" (ByVal pidl As Long, _
ByVal pszPath As String) As Long
Private Declare Function SHBrowseForFolder Lib "shell32.dll" _
Alias "SHBrowseForFolderA" (lpBrowseInfo As BROWSEINFO) As Long
Private Declare Function lstrcat Lib "kernel32" _
Alias "lstrcatA" (ByVal lpString1 As String, _
ByVal lpString2 As String) As Long
Private Declare Function OleInitialize Lib "ole32.dll" _
(lp As Any) As Long
Private Declare Sub OleUninitialize Lib "ole32" ()
Private Const BIF_USENEWUI = &H40
Private Const MAX_PATH = 260
'【自定義函數】
Public Function GetFolder_API(sTitle As String, Optional vFlags As Variant) As String
Dim lpIDList As Long
Dim sBuffer As String
Dim BInfo As BROWSEINFO
If IsMissing(vFlags) Then vFlags = BIF_USENEWUI
Call OleInitialize(ByVal 0&)
With BInfo
.lpszTitle = lstrcat(sTitle, "")
.ulFlags = vFlags
End With
lpIDList = SHBrowseForFolder(BInfo)
If (lpIDList) Then
sBuffer = Space(MAX_PATH)
SHGetPathFromIDList lpIDList, sBuffer
sBuffer = Left(sBuffer, InStr(sBuffer, vbNullChar) - 1)
If sBuffer <> "" Then GetFolder_API = sBuffer
End If
Call OleUninitialize
End Function
'【使用方法】
Sub Test()
MsgBox GetFolder_API("選擇文件夾")
End Sub


2、使用Shell.Application方法

復制代碼 代碼如下:


Sub GetFloder_Shell()
Set objShell = CreateObject("Shell.Application")
Set objFolder = objShell.BrowseForFolder(0, "選擇文件夾", 0, 0)
If Not objFolder Is Nothing Then
MsgBox objFolder.self.path
End If
Set objFolder = Nothing
Set objShell = Nothing
End Sub


3、使用FileDialog方法

復制代碼 代碼如下:


Sub GetFloder_FileDialog()
Dim fd As FileDialog
Set fd = Application.FileDialog(msoFileDialogFolderPicker)
If fd.Show = -1 Then MsgBox fd.SelectedItems(1)
Set fd = Nothing
End Sub


以上方法在WINXP+OFFICE2003中測試通過

延伸 · 閱讀

精彩推薦
1099
主站蜘蛛池模板: 亚洲欧美激情视频 | 欧美成人一区二区 | 久久精品超碰 | 玖玖精品| 国产精品久久国产精品 | 免费成人在线电影 | 日韩综合 | 日韩精品一区二区三区在线观看视频网站 | 午夜成人免费视频 | 日本二区不卡 | 国产日韩精品一区二区 | 欧美精品一区二区三区四区 | 亚洲国产一区二区三区 | 日韩综合一区二区 | 国产精品久久久久久一区二区三区 | 毛片网站免费在线观看 | 久久久久久99| 亚洲一级毛片 | 天天爱天天操 | 性色蜜桃x88av| 成人中文字幕在线观看 | 欧美日韩国产一区二区三区 | 欧美在线综合 | 午夜男人天堂 | 免费精品视频 | 欧美一级久久久 | 精品在线二区 | 色视频免费在线 | 国产精品美女久久久久久免费 | 欧美一区二区三区久久精品 | 色婷婷一区二区三区 | 成年人黄色免费网站 | 国产毛片毛片毛片 | 日韩精品免费一区二区夜夜嗨 | 在线欧美日韩 | av免费在线观看网站 | 免费av一区二区三区 | 一级黄片毛片 | 亚洲综合中文 | 久久国内 | 国产在线一区二区三区 |