乔山办公网我们一直在努力
您的位置:乔山办公网 > excel表格制作 > 如何把一个文件夹里的所有文件名全部导到EXCEL表格里面去?-将文件导入excel,将文本中的数据导入excel

如何把一个文件夹里的所有文件名全部导到EXCEL表格里面去?-将文件导入excel,将文本中的数据导入excel

作者:乔山办公网日期:

返回目录:excel表格制作


新建一个文件夹,把所有的的Excel文件都放在里面,然后把下面的代码复制粘贴到你要导入的Excel文件里,运行宏,选中文件夹中所有的Excel文件,就可以了.
Sub CombineWorkbooks()
Dim FilesToOpen
Dim x As Integer
Application.ScreenUpdating = False
FilesToOpen = Application.GetOpenFilename(FileFilter:="MicroSoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="要合并的文e799bee5baa6e997aee7ad94e59b9ee7ad94362件")
If TypeName(FilesToOpen) = "Boolean" Then
MsgBox "没有选中文件"
GoTo ExitHandler
End If
x = 1
While x <= UBound(FilesToOpen)
Workbooks.Open Filename:=FilesToOpen(x)
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
x = x + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
End Sub

开始copy→程序→附件→命令提示符
输入以下命令并回车:(例如是“D:\文件")
我的文件” 文件夹下的文件)
D: (D后面是一个关掉输入法后的冒号<半角>)回车
cd D:\文件 回车
dir =>name.txt 回车
此时在你的“D:\文件”下已经生成一个name.txt 文件
打开这个name.txt文件,全选,复制,在EXCEL表格中点击粘贴,分列,留下想要的内容
1.在Access中创建对Excel工作簿的链接:在Access中选择“外部数据——导入——Excel”。2.在“获取外部数据”对话框中选择“通过创建链接表来链接到数据源”。必须为每个Excel工作簿重复该过程直到将它们都链接到数据库。结果如下图所示。3.在SQL视图中开始新的查询,单击“创建——其他——查询设计”。4.选择“查询工具-设计”中的“SQL视图”5.在SQL视图中,为所有链接的Excel表输入Select语句,在每个Select语句间使用Union操作符,在SQL视图中输入选择查询语句。6.运行查询后,结果将是包含从所有链接的文件中获取并合并后的数据。只要链接的Excel文件在相同的位置,每次打开数据库时Access将自动刷新链接以获取最新数据。这意味着只需设置一次,然后在每次需要重新组合Excel文件时运行联合查询。然而,默认情况下,UNION操作符会移除数据中的任何重复行。如果知道数据中有重复行,并且想保留它们,那么需要使用UNION ALL,以允许传递重复行。

亲,将要汇总的文件放到一个单独专门的文件夹中。在此文件夹中新建或打开一个Excel文件作为汇总文件,找一个空白Sheet或者新建一个Sheet存放汇总数据。

然后按“Alt+F11”打开VBA编辑窗口,然后在左侧对应的Sheet上双击,右侧空白处粘贴下面的代码。e79fa5e98193e58685e5aeb9331关闭VBA窗口。然后按“Alt+F8”打开宏窗口,选择刚插入的宏,点击“执行”。

 

Sub hz()
Dim bt, r, c, n, first As Long
bt = 1 '这里设置标题行有几行
Dim f, ff As Object
Set fso = CreateObject("Scripting.FileSystemObject")
Set ff = fso.getfolder(ThisWorkbook.Path & "\")
For Each f In ff.Files
    If f.Name <> ThisWorkbook.Name And Left(f.Name, 2) <> "~$" Then
        Workbooks.Open f.Name
        With Workbooks(f.Name).ActiveSheet
            If first = 0 Then
                c = .Cells(1, Columns.Count).End(xlToLeft).Column
                .Range("A1").Resize(bt, c).Copy ThisWorkbook.ActiveSheet.Range("A1")
                n = bt + 1: first = 1
            End If
            r = .Cells(Rows.Count, "A").End(xlUp).Row
            .Range("A" & bt + 1).Resize(r - bt, c).Copy ThisWorkbook.ActiveSheet.Range("A" & n)
            n = n + r - bt
        End With
        Workbooks(f.Name).Close False
    End If
Next f
Set fso = Nothing
End Sub

相关阅读

关键词不能为空
极力推荐

ppt怎么做_excel表格制作_office365_word文档_365办公网