導航:首頁 > 文件處理 > 如何找到vbext文件夾

如何找到vbext文件夾

發布時間:2022-11-16 00:17:09

① VB查找指定文件夾並獲取文件路徑的代碼

1.首先打開Excel電子表格,然後在開發工具中打開VBA編輯器,如下圖。

② VB 搜索文件夾

VB搜索文件夾,列出指定文件夾下全部文件夾或全部隱藏的文件夾

'查找第一個文件的API
Private Declare Function FindFirstFile Lib "kernel32" Alias "FindFirstFileA" (ByVal lpFileName As String, lpFindFileData As WIN32_FIND_DATA) As Long
'查找下一個文件的API
Private Declare Function FindNextFile Lib "kernel32" Alias "FindNextFileA" (ByVal hFindFile As Long, lpFindFileData As WIN32_FIND_DATA) As Long
'獲取文件屬性的API
Private Declare Function GetFileAttributes Lib "kernel32" Alias "GetFileAttributesA" (ByVal lpFileName As String) As Long
'關閉查找文件的API
Private Declare Function FindClose Lib "kernel32" (ByVal hFindFile As Long) As Long

'常量
Private Const MAX_PATH = 260
Private Const MAXDWORD = &HFFFF
Private Const INVALID_HANDLE_VALUE = -1
Private Const FILE_ATTRIBUTE_ARCHIVE = &H20
Private Const FILE_ATTRIBUTE_DIRECTORY = &H10
Private Const FILE_ATTRIBUTE_HIDDEN = &H2
Private Const FILE_ATTRIBUTE_NORMAL = &H80
Private Const FILE_ATTRIBUTE_READONLY = &H1
Private Const FILE_ATTRIBUTE_SYSTEM = &H4
Private Const FILE_ATTRIBUTE_TEMPORARY = &H100
Private Const BIF_RETURNONLYFSDIRS = 1

Private Type FILETIME
dwLowDateTime As Long
dwHighDateTime As Long
End Type

'定義類(用於查找文件)
Private Type WIN32_FIND_DATA
dwFileAttributes As Long
ftCreationTime As FILETIME
ftLastAccessTime As FILETIME
ftLastWriteTime As FILETIME
nFileSizeHigh As Long
nFileSizeLow As Long
dwReserved0 As Long
dwReserved1 As Long
cFileName As String * MAX_PATH
cAlternate As String * 14
End Type

Function GetAllFilePath(path As String, SearchStr As String, bOnlyHidden As Boolean)
Dim FileName As String ' 文件名
Dim DirName As String ' 子目錄名
Dim dirNames() As String ' 目錄數組
Dim nDir As Integer ' 當前路徑的目錄數
Dim i As Integer ' 循環計數器變數
Dim hSearch As Long ' 搜索句柄變數
Dim WFD As WIN32_FIND_DATA
Dim Cont As Integer
Dim FileAttrib As Long

If Right(path, 1) <> "\" Then path = path & "\"
'搜索子目錄
nDir = 0
ReDim dirNames(nDir)
Cont = True
hSearch = FindFirstFile(path & "*", WFD)

If hSearch <> INVALID_HANDLE_VALUE Then
Do While Cont
DirName = StripNulls(WFD.cFileName)
If (DirName <> ".") And (DirName <> "..") Then
FileAttrib = GetFileAttributes(path & DirName)
If FileAttrib And FILE_ATTRIBUTE_DIRECTORY Then
If bOnlyHidden Then
If FileAttrib And FILE_ATTRIBUTE_HIDDEN Then List1.AddItem path & DirName
Else
List1.AddItem path & DirName
End If
End If
dirNames(nDir) = DirName
nDir = nDir + 1
ReDim Preserve dirNames(nDir)
End If

Cont = FindNextFile(hSearch, WFD) '獲取下一個子目錄
Loop

Cont = FindClose(hSearch)

End If

' 遍歷目錄並累計文件總數
hSearch = FindFirstFile(path & SearchStr, WFD)
Cont = True

If hSearch <> INVALID_HANDLE_VALUE Then
While Cont

FileName = StripNulls(WFD.cFileName)
If (FileName <> ".") And (FileName <> "..") Then
GetAllFilePath = GetAllFilePath + (WFD.nFileSizeHigh * MAXDWORD) + WFD.nFileSizeLow
End If
Cont = FindNextFile(hSearch, WFD) ' 獲取下一個文件

Wend

Cont = FindClose(hSearch)
End If
'如果子目錄存在則遍歷之
If nDir > 0 Then
For i = 0 To nDir - 1
GetAllFilePath = GetAllFilePath + GetAllFilePath(path & dirNames(i) & "\", SearchStr, bOnlyHidden)
Next i
End If
End Function

Function StripNulls(OriginalStr As String) As String
If (InStr(OriginalStr, Chr(0)) > 0) Then
OriginalStr = Left(OriginalStr, InStr(OriginalStr, Chr(0)) - 1)
End If
StripNulls = OriginalStr
End Function

Private Sub Command1_Click()
Dim SearchPath As String
Dim FindStr As String

List1.Clear
SearchPath = "c:\rootdir"
FindStr = "*.*"

GetAllFilePath SearchPath, FindStr, true

End Sub

調用方法

GetAllFilePath SearchPath, FindStr, bOnlyHidden

SearchPath 起始路徑
FindStr 要查找文件夾名稱
bOnlyHidden 是否只查找隱藏的, true 只查找隱藏文件夾, false 全部文件夾

③ 在VB中,如何查找文件

在這里需要舉一個例子好能清楚的了解在VB中怎麼查找文件,如下:
假設要找的文件是TextBox 叫 TextBox1,那麼可以在VB中這樣寫:
dim FileName, Path as string
Path = "D:\123\"
FileName = Path & TextBox1.Text & ".xlsx" (後面根據文件的擴展名更改即可)
Workbooks.Open filename:=FileName
VB全稱是Visual Basic,是一種由 Microsoft 公司開發的結構化的、模塊化的、面向對象的、包含協助開發環境的事件驅動為機制的可視化程序設計語言。從任何標准來說,VB都是世界上使用人數最多的語言——不管是盛贊VB的開發者還是抱怨VB的開發者的數量。它源自於BASIC編程語言。VB擁有圖形用戶界面(GUI)和快速應用程序開發(RAD)系統,可以輕易的使用DAO、RDO、ADO連接資料庫,或者輕松的創建ActiveX控制項。程序員可以輕松的使用VB提供的組件快速建立一個應用程序。

④ vb 如何查找一個文件 快捷方式 路徑 急.

點擊開始,程序,運行,在裡面輸入你要找的路徑即可找到
或者用搜索文件夾和文件方式找到

⑤ 打開VB時 vbe6ext.olb 不能被載入,怎麼辦,w7 64位的,然後晚上查了找VB6和VB7的文件夾

一、關閉Microsoft word/excel/PowerPoint法式。 二、找到找到文件VBE6EXT.OLB,打開C:\Program Files (x86)\Co妹妹on Files\microsoft shared\VBA\VBA6 因人而異,也有可能在Program Files目次里。 三、把VBE6EXT.OLB文件改為VBE6EXT.OLD ,然後肯定。 四、打開Excel法式,入進「開發東西」,若是你沒有這個菜單,請在功能欄上右鍵單擊,選擇「自界說功能區」,並在右邊列表中選擇「開發東西」,點擊肯定。 五、單擊「Visual Basic中」將其打開 六、一個彈出窗口來扣問是否要修復法式,請單擊是,運行修復(由於我已經經修復過了,就沒有彈出窗口了,無法截圖了) 七、關閉Excel,然後從新打開它,就行了。

⑥ VB中怎麼查找文件夾中的文件並且打開

假設你的那個TextBox叫TextBox1,則在VBA中可以寫:


dimFileName, Path asstring

Path = "D:123"

FileName= Path & TextBox1.Text & ".xlsx" (後面根據文件的擴展名更改)


Workbooks.Openfilename:=FileName


這是基本代碼,其他的可以自由發揮。


以下是我常用的一段代碼,作用是彈出一個文件夾選擇框,選中文件夾後,可以自動依次打開所有文件,方便批量處理。如果不想打開很多,就把 FileDialog 里的參數改為msoFileDialogFilePicker 即可,當然,後面的For...Next循環也就不需要了。

DimPath,filename,FNameAsString
DimFileNumber,i,mAsInteger
DimfopenAsFileDialog

m=1
Setfopen=Application.FileDialog(msoFileDialogFilePicker)

Iffopen.Show=0ThenExitSub

Path=fopen.SelectedItems(1)&""
Sheet2.Range("A:A").ClearContents

'列出目錄文件名
filename=Dir(Path)
DoUntilfilename=""
Sheet2.Cells(m,1)=filename
m=m+1
filename=Dir
Loop

FileNumber=WorksheetFunction.CountA(Sheet2.Range("A:A"))'文件總數

Fori=1ToFileNumber
Workbooks.Openfilename:=Path&Sheet2.Cells(i,1)
CallWork
ActiveWorkbook.CloseTrue
Next

⑦ VB獲取文件夾路徑

給你個VB遍歷文件夾的代碼吧

Private
Declare
Function
FindFirstFile
Lib
"kernel32"
Alias
"FindFirstFileA"
(ByVal
lpFileName
As
String,
lpFindFileData
As
WIN32_FIND_DATA)
As
Long
'查找下一個文件的API
Private
Declare
Function
FindNextFile
Lib
"kernel32"
Alias
"FindNextFileA"
(ByVal
hFindFile
As
Long,
lpFindFileData
As
WIN32_FIND_DATA)
As
Long
'獲取文件屬性的API
Private
Declare
Function
GetFileAttributes
Lib
"kernel32"
Alias
"GetFileAttributesA"
(ByVal
lpFileName
As
String)
As
Long
'關閉查找文件的API
Private
Declare
Function
FindClose
Lib
"kernel32"
(ByVal
hFindFile
As
Long)
As
Long
Const
MAX_PATH
=
260
Const
MAXDWORD
=
&HFFFF
Const
FILE_ATTRIBUTE_DIRECTORY
=
&H10
Private
Type
FILETIME
dwLowDateTime
As
Long
dwHighDateTime
As
Long
End
Type
Dim
tempstr
As
String
'定義類(用於查找文件)
Private
Type
WIN32_FIND_DATA

dwFileAttributes
As
Long

ftCreationTime
As
FILETIME

ftLastACCESSTime
As
FILETIME

ftLastWriteTime
As
FILETIME

nFileSizeHigh
As
Long

nFileSizeLow
As
Long

dwReserved0
As
Long

dwReserved1
As
Long

cFileName
As
String
*
MAX_PATH

cAlternate
As
String
*
14
End
Type
Dim
filecount
As
Integer
Dim
dirs()
As
String
Dim
curr
As
Long
Dim
ss()
As
String
Private
Sub
Command1_Click()

tempstr
=
"c:"

searchdir
tempstr

filecount
=
0
End
Sub
Public
Function
searchdir(path
As
String)

Dim
WFD
As
WIN32_FIND_DATA

Dim
i
As
Long

Dim
temp
As
String

Dim
h
As
Long

Dim
zhao
As
Long

Dim
iindex
As
Integer

Dim
dirs()
As
String

Dim
l
As
Long

zhao
=
1

h
=
FindFirstFile(path
&
"\*.*",
WFD)

If
h
<>
-1
Then

While
zhao

zhao
=
1

temp
=
Left(WFD.cFileName,
InStr(WFD.cFileName,
Chr$(0))
-
1)

If
temp
<>
"."
And
temp
<>
".."
Then

If
WFD.dwFileAttributes
And
vbDirectory
Then

ReDim
Preserve
dirs(iindex)

dirs(iindex)
=
path
&
"\"
&
temp

iindex
=
iindex
+
1

ReDim
Preserve
ss(filecount)

ss(filecount)
=
path
&
"\"
&
temp

filecount
=
filecount
+
1

End
If

End
If

zhao
=
FindNextFile(h,
WFD)

Wend

End
If

FindClose
(h)

If
iindex
>
0
Then

For
i
=
0
To
iindex
-
1

Call
searchdir(dirs(i))

Next
i

End
If
End
Function

⑧ VB在哪個文件夾里啊

可以參考下面方法處理:


1、首先打開瀏覽器,然後在搜索欄輸入WPSvba插件,點擊搜索,然後在搜索到的頁面點擊打開。如下圖


⑨ 如何獲得vb編譯的exe所在的文件夾

app.path 即可獲取當前文件夾

⑩ vb 如何通過一個文件的全路徑獲得該文件所在文件夾

解決這個問題有兩種方法。

第一種:知道了文件的全路徑,那麼路徑中當然也包含文件所在的文件夾信息,只要從中提取即可。例如,已知文件全路徑為「C:WindowsSystem32abc.dll」並賦予變數strPt,可用過下面語句獲取文件夾。

left(strPt,instrrev(strPt,""))

instrrev函數的作用是從右側開始查找指定字元串,並返回數值,此處返回值為20.left函數的作用是從左往右取N個字元,此例中取20個,最後結果為:C:WindowsSystem32。

第二種方法:使用FileSystemObject對象。代碼如下:

dimfsoasobject,strFolderasobject
setfso=createobject("scripting.filesystemobject")
setstrFolder=fso.getfolder("C:WindowsSystem32abc.dll")
msgboxstrFolder.path

文件系統對象FSO的英文全稱是File System Object ,這種對象模型提出了有別於傳統的文件操作語句處理文件和文件夾的方法。通過採用object.method這種在面向對象編程中廣泛使用的語法,將一系列操作文件和文件夾的動作通過調用對象本身的屬性直接實現。

閱讀全文

與如何找到vbext文件夾相關的資料

熱點內容
dvd光碟存儲漢子演算法 瀏覽:757
蘋果郵件無法連接伺服器地址 瀏覽:963
phpffmpeg轉碼 瀏覽:671
長沙好玩的解壓項目 瀏覽:145
專屬學情分析報告是什麼app 瀏覽:564
php工程部署 瀏覽:833
android全屏透明 瀏覽:737
阿里雲伺服器已開通怎麼辦 瀏覽:803
光遇為什麼登錄時伺服器已滿 瀏覽:302
PDF分析 瀏覽:485
h3c光纖全工半全工設置命令 瀏覽:143
公司法pdf下載 瀏覽:382
linuxmarkdown 瀏覽:350
華為手機怎麼多選文件夾 瀏覽:683
如何取消命令方塊指令 瀏覽:349
風翼app為什麼進不去了 瀏覽:778
im4java壓縮圖片 瀏覽:362
數據查詢網站源碼 瀏覽:150
伊克塞爾文檔怎麼進行加密 瀏覽:892
app轉賬是什麼 瀏覽:163