VBA怎麼在資料夾內,提取EXCEL的特定內容?

2024-12-30 01:20:29 字數 2806 閱讀 3352

1樓:慶年工坊

sub readsubfolders()

i = cells(, 1).end(3).row

set fso = createobject("")

set myfolder = "d:\a") 引號內填寫資料夾a的完整路徑。

for each myfile in

if like "*xls*" then

set wb =

i = i + 1

cells(i, 1) =

cells(i, 2) ="餐飲費用").b2]

set rg = "餐飲費用").:="供貨商位址", lookin:=xlvalues, lookat:=xlwhole)

cells(i, 3) =

cells(i, 4) =

set rg = "餐飲費用").:="承包商位址", lookin:=xlvalues, lookat:=xlwhole)

cells(i, 5) =

cells(i, 6) =

set rg = "餐飲費用").:="進貨詳單內容2", lookin:=xlvalues, lookat:=xlwhole)

cells(i, 7) =, 1)

falseend if

nextset fso = nothing

end sub

2樓:1陳杭榮

完成要求需要掌握以下知識點:

會使用dir用法遍歷資料夾下所有檔案,找到所需檔案。

會使用open用法開啟所需檔案(也可不開啟檔案,通過sql讀取記憶體)會使用find用法尋找所需文字位置。

會使用offset用法偏移獲取所需資訊。

會使用陣列用法,將資料存到陣列後一次輸出,提高計算效率。

3樓:網友

查詢值, lookin:=xlvalues, lookat:=xlwhole)

找到位置後,用offset獲取它右邊或下邊的值。

用excel vba獲取指定目錄下的檔名(包括資料夾名)

4樓:刺任芹

1、首先利用快捷鍵「windows鍵+r」開啟「執行」視窗。

2、接著輸入「cmd」並點選「開啟」

3、比如是需要複製輸出c盤下的progam data中資料夾的名字。

4、在命令視窗中輸入「cd c:\progam data」

5、點選「回車鍵」後出現下面情況。

6、然後輸入「dir /b>命令並點選「回車鍵」

7、接著就在d盤出現名稱為21的乙個excel**。

8、點選開啟即可檢視progam data中的資料夾名字都在excel**中,可以批量直接複製了。

excel怎樣用vba自動提取資料夾內的檔名

5樓:劇琨瑜寧姮

qgrmdtj的**生成的是"檔名",這和樓主的要求一樣,而"喜歡自作多情。

生成的結果是代路徑的,好像和提問有點偏差。

6樓:網友

試問,資料夾路徑為何?

excel 用vba提取資料

7樓:綠衣人敲門

在b2輸入「=mid(a1,min(find(,a1&「0123456789」))20)」

2 、把單元格里面所有的數字都提出來。可以使用巨集。先開啟vba器。工具——巨集——visual basic 器。

function zzsz(xstr as string) as stringdim i as integerfor i = 1 to len(xstr)if isnumeric(mid(xstr, i, 1)) then zzsz = zzsz & mid(xstr, i, 1)nextend function

4、回到工作表,在b2單元格那裡輸入「=zzsz(a2)」。就可以用vba把a2單元格里所有的數字都提取出來了,如圖所示。

excel怎麼只提取**中的數字。

5、指定從第幾個陣列提取開始。也就是說在不連續的那些數字中,從第幾次出現的陣列開始提取。同樣在模組那裡輸入如下**:

function getnums(rcell as range, num as integer) as stringdim arr1() as string, arr2() as stringdim chr as string, str as stringdim i as integer, j as integeron error goto line1

str = i = 1 to len(str)chr = mid(str, i, 1)if (asc(chr) 《48 or asc(chr) 》57) thenstr = replace(str, chr, 「end ifnext

arr1 = split(trim(str))redim arr2(ubound(arr1))for i = 0 to ubound(arr1)if arr1(i) 《thenarr2(j) = arr1(i)j = j + 1end ifnext

getnums = iif(num 《= j, arr2(num - 1), line1:end function

8樓:網友

附件做好的,有問題追問。

alt +f8執行。

9樓:網友

你的前兩個表是不是固定的名稱,而且是不需要提取的?

vba提取欄位

10樓:網友

逐對分列,對應的字典累加後輸出。

VBA怎麼資料夾,VBA怎麼新建資料夾

sub getfolder dim foldername,filename,myfolder,myfile as string foldername abc filename abc.xls myfolder dir d foldername,16 myfile dir d foldername f...

怎麼給資料夾加密,怎麼加密資料夾

這天空軟體站的 絕對安全功能1 對資料夾具有五種加密方法 閃電加密 瞬間加密你電腦裡或行動硬碟上的資料夾,無大小限制,加密後防止複製 拷貝和刪除,並且不受系統影響,即使重灌 ghost還 原 dos和安全模式下,加密的資料夾依然保持加密狀態,在何種環境下通過其他軟體都無法解密。隱藏加密 瞬間隱藏你的...

vba在當前目錄下建立新的資料夾

vba.mkdir thisworkbook.path 資料夾名 試試下面的 在當前目錄下依次建立指定資料夾 excel獲取當前工作簿路徑 thisworkbook.path excel新建資料夾 mkdir c temp linux如何在當前目錄下刪除空檔案 rm rf 強制刪除 使用rm命令直接...