A. excel2007获取本地文件夹目录的所有文件的路径,文件路径的文件名匹配excel的栏目1的值
知道用vba的话,代码如下,
Sub 获取路径()
Dim fso As Object
Dim 文件夹 As Folder
Dim 文件 As File
Set fso = CreateObject("scripting.filesystemobject")
Set 文件夹 = fso.GetFolder("这里是你的文件夹路径") '注意英文半角,标点符号
For Each 文件 In 文件夹
For i = 2 To 文件夹.Files.Count + 1
ThisWorkbook.worksheets("sheet4").Range("e" & i) = 文件.Path
End Sub
B. excel自动提取文件夹中的数据
Set THISSHEET = ActiveSheet
MYPATH = "E:\下单(2)\A11\D11\送货单"
XLSFILE = Dir(MYPATH & "*.XLSX") '你的excel文件如果是xls后缀,改成*.xls
While XLSFILE <> ""
Application.ScreenUpdating = False
Application.ShowWindowsInTaskbar = False
With Workbooks.Open(MYPATH & XLSFILE)
THISSHEET.Range("A" & (THISSHEET.[A1048576].End(xlUp).Row + 1)) = XLSFILE ‘如果不需要在导入数据前面显示来自那个excel文件的话,这行可以删除
.Sheets("SHEET2").[A1:J9].Copy THISSHEET.Range("A" & (THISSHEET.[A1048576].End(xlUp).Row + 1))
.Close
End With
Application.ShowWindowsInTaskbar = True
Application.ScreenUpdating = True
XLSFILE = Dir
Wend
C. 请问excel大神,如何批量获取指定路径下其他excel文件中数据
如果只有两三个文件,可以使用公式实现:打开三个文件,在【总.xls】里面的需要的单元格输入等号=,然后点击别的工作簿、工作表、单元格,最后回车即可。
如果文件数量很多,或者需要获取数据的范围很多,或者需要获取不确定的数据,那么就必须使用VBA编程,例如下面的代码:
Option Explicit
Sub 宏1()
Dim st As Worksheet
Dim fn, n
Set st = ActiveSheet
For Each fn In Array("a.xls", "b.xls")
n = st.UsedRange.Rows.Count + 1
With Workbooks.Open(fn)
.Sheets(1).UsedRange.Copy st.Cells(n, 1)
.Close False
End With
Next fn
End Sub
D. 批量获取文件夹以及子文件夹下文件数量,输出到Excel表格
如果你有点DOS命令的基础,我下面说的你就能看懂了。
按WIN+R打开运行,输入CMD,按回车,打开DOS窗口
进入你需要统计文件数量的那个目录,如果你不会DOS命令的话,就把文件夹复制到一个盘符根目录下,假设在D盘根目录下,文件夹名"123"
在DOS中依次输入
d:
按回车
cd 123
按回车
这时你就进入这个目录了
dir /s > 1.txt
回车之后,会在这个目录里形成一个1.txt的文件,文件中包含了你目录及子目录的文件信息
回到资源管理器里打开这个文件,里面就是你想要的东西。
E. 如何使用excel提取文件夹中的所有文件路径
使用excel提取文件夹中的所有文件名称的方法主要有以下两个:
1、在那个文件夹内新建一个.TXT文件(如wenjian.txt),用记事本单开输入
dir> 1.txt
保存退出
将刚才的.TXT(wenjian.txt)更名为.bat文件(wenjian.bat)
双击wenjian.bat文件运行一次,在文件夹内多出一个1.txt文件
打开1.txt文件,将其中的内容粘贴到Excel中,数据——分列处理就可以得到你要的文件名列表了!
2、VBA(2003版)
在那个文件夹下新建Excel文件,打开新建的Excel文件,右击工作表标签(如Sheet1),查看代码——在代码编辑器中输入以下代码
Sub Test()
Dim i As Integer
Dim strPath As String
strPath = ThisWorkbook.Path
With Application.FileSearch
.LookIn = strPath
.SearchSubFolders = True
.Filename = "*.*"
If .Execute > 0 Then
For i = 1 To .FoundFiles.Count
Range("A" & i) = .FoundFiles(i)
Next i
End If
End With
End Sub
回到Excel表格中,工具——宏——宏——选择Sheet1.Test——执行
方法一简单的操作就可以,方法二需要对程序有一定的了解,方法二通用性比较强,需要的时候执行一下就可以,更快捷。
F. EXCEL 获取文件夹中其他EXCEL表中的数据
可以VBA,新建一个EXCEL,在sheet2的A1单元格输入要你存了N个文件的文件夹路径:例如 h:明细表, 然后在sheet2建一个CommandButton按钮,把以下代码复制到按钮里面,点按钮后,程序会先把路径下文件夹的文件名写到sheet2的的A列,再把这些所有的文件的C2-G200的内容汇总到sheet1中.
PrivateSubCommandButton1_Click()
OnErrorResumeNext
Application.ScreenUpdating=False
DimshAsWorksheet
Range("a2:b65536").ClearContents
mypath=Trim(Range("a1"))
IfRight(mypath,1)<>""Then
mypath=mypath&""
n=2
myfile=Dir(mypath&"*.*")
DoWhilemyfile<>""
Cells(n,2)=myfile
Cells(n,1)=mypath&myfile
myfile=Dir
n=n+1
Loop
Ifn=2ThenExitSub'如果N=2,则表示路径下没有提取到xls文件
Forj=2Ton-1
Workbooks.OpenTrim(Range("a"&j))
WithThisWorkbook.Worksheets("sheet1")
row1=.Range("b65536").End(xlUp).Row
Workbooks(Trim(Range("b"&j))).Worksheets("sheet1").Range("b2:g100").Copy.Range("b"&row1+1)
EndWith
Workbooks(Trim(Range("b"&j))).Close
Nextj
Application.ScreenUpdating=True
EndSub
G. 如何在EXCEL表格里批量提取数据到文件中
在EXCEL表格里,输入VLOOKUP函数,打开函数参数面板,设置四个参数,操作方法如下:
操作设备:机械革命S3 Pro。
设备系统:Windows11。
操作软件:Excel2108。
1、首先打开EXCEL表格,在表格二单元格内输入函数名“=VLOOKUP”,点击菜单栏下方状态栏上“FX”。