主頁(yè) > 知識(shí)庫(kù) > VBA 瀏覽文件夾對(duì)話框調(diào)用的幾種方法

VBA 瀏覽文件夾對(duì)話框調(diào)用的幾種方法

熱門標(biāo)簽:浦東上海400開(kāi)頭的電話申請(qǐng) 邯鄲外呼調(diào)研線路 真人語(yǔ)音電銷機(jī)器人系統(tǒng) 樂(lè)昌電話機(jī)器人 買了外呼系統(tǒng)不想用了怎么辦 電話機(jī)器人電話卡封號(hào)怎么辦 北京語(yǔ)音電銷機(jī)器人價(jià)格 開(kāi)封百應(yīng)電銷機(jī)器人聯(lián)系方式 武漢呼叫中心外呼系統(tǒng)線路商
1、使用API方法 
復(fù)制代碼 代碼如下:

'【類型聲明】
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
'【自定義函數(shù)】
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方法
復(fù)制代碼 代碼如下:

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方法
復(fù)制代碼 代碼如下:

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中測(cè)試通過(guò)
您可能感興趣的文章:
  • VBA 編程基礎(chǔ)
  • excel vba 高亮顯示當(dāng)前行代碼
  • Excel VBA連接并操作Oracle
  • vba 獲取PPT幻燈片中的所有標(biāo)題的代碼
  • VBA中連接SQLSERVER數(shù)據(jù)庫(kù)例子
  • VBA解決Windows空當(dāng)接龍的617局

標(biāo)簽:河北 宜春 石嘴山 松原 淄博 六安 自貢 鄂州

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《VBA 瀏覽文件夾對(duì)話框調(diào)用的幾種方法》,本文關(guān)鍵詞  VBA,瀏覽,文件夾,對(duì)話框,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《VBA 瀏覽文件夾對(duì)話框調(diào)用的幾種方法》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于VBA 瀏覽文件夾對(duì)話框調(diào)用的幾種方法的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章