Excel跨文件提取数据

发布网友 发布时间:2022-04-22 04:16

我来回答

4个回答

热心网友 时间:2023-12-18 19:02

Excel跨文件提取数据的具体操作步骤如下:

1、首先我们打开电脑里的excel软件,在excel功能区找到方方格子,并找到汇总功能。

2、选择“多簿汇总到一表”,然后点击开始。

3、在弹出的对话框中,选择右边的添加文件。

4、将需要提取的文件添加,并点击打开。

5、返回对话框以后,点击右下角的下一步。

6、选择需要提取的工作表,如果全部提取就选择第一项,如果数据在指定工作表,就选择对应的名称,然后进行下一步。

7、在弹出的对话框中选择需要提取数据的范围以及数值或者格式;可以设置从第几行开始到多少行结束。

8、设置文件需要存放的地址(默认为桌面),点击开始,就会开始提取数据。

9、完成之后就会在设置的地址出现一个“提取结果”的文件,所有的数据就提取出来了。

热心网友 时间:2023-12-18 19:02

比如当前工作表中要提取另一个工作簿BOOK2的工作表sheet1的A1单元内容,只要写上:=[BOOK2]SHEET1!.A1就可以了。

注意:当另外工作表有变更,那么需要打开另外的工作表后,该数据才会更新。(当然还有要设置公式为:自动计算)

热心网友 时间:2023-12-18 19:03

(附件中有样本文件,以供测试)

关掉所有工作簿,退出Excel。然后,重新启动Excel,新开一个工作簿

在工作表标签上击右键,查看代码。出来VBE窗口。插入-----模块

在模块窗口中粘贴以下代码。回到Excel界面,Alt+F8运行下面这个宏,就行了。

Sub 文件取数()
Dim i As Integer, mPath As String, fx As String, wb As Workbook
mPath = "D:\123"     '指明搜索位置为D盘中名为123的文件夹下
fx = Dir(mPath & "\*.xls*")   '遍历该路径,搜索所有.xls*类型的文件
With fx <> ""
    If fx <> ThisWorkbook.Name Then
    i = i + 1
    Application.ScreenUpdating = False   '关闭屏幕刷新
    Set wb = Workbooks.Open(Filename:=mPath & "\" & fx, ReadOnly:=True)  '以只读方式打开
    ThisWorkbook.Sheets(1).Cells(i, 1) = Left(fx, InStr(fx, ".") - 1)                '读主文件名
    ThisWorkbook.Sheets(1).Cells(i, 2) = wb.Sheets(1).[a5]     '读第一个工作表的A5单元格内容
    wb.Close
    Application.ScreenUpdating = False    '打开屏幕刷新
    End If
End With
fx = Dir
End Sub

 

追问瓦去大神好良心QAQ。大神我学过C++那个谭XX的一本书想学VBA的话怎么学比较好?

追答VBA比较容易上手——VBA对大小写不敏感。
随便买本书,就可以了。

热心网友 时间:2023-12-18 19:03

在B1中输入或复制粘贴下列公式
=INDIRECT("'D:\123\["&A1&".xls]Sheet1'!A5")
下拉填充

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com