发布网友 发布时间:2022-04-23 10:22
共5个回答
热心网友 时间:2022-07-13 15:31
如果只有两三个文件,可以使用公式实现:打开三个文件,在【总.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
热心网友 时间:2022-07-13 15:31
不在EXCEL环境读EXCEL文件除非是读点文件标志或属性什么的,读数据怎么可能。
在EXCEL中用VBA宏代码读取D:\test.xls表sheet1中A1单元格的值,代码如下:
Workbooks.Open Filename:=D:\test.xls'打开文件
a=Worksheets(sheet1).Range("A1")'读取sheet1表的A1单元格的值到变量a
ActiveWorkbook.Saved = True '关闭时不提示保存
ActiveWindow.Close '关闭文件
热心网友 时间:2022-07-13 15:32
可以同时打开两个表,在表1某个员工所在行的空白单元格上单击左键,输入=,然后转到表2,点一下该员工对应的工资,然后按回车(必须要按回车)。返回表1刚才输入=的单元格,可以看到里面的内容变成了表2的工资数,然后再次单击该单元格,在上边工具栏下边的框里会有个类似这样的内容(公式):='[工作表 (2).xls]Sheet1'!$B$2,把里面的$符号都删除掉,将鼠标指到该单元格的右下角,等鼠标变成一个黑色粗十字标志时,双击鼠标左键,将公式向下复制,就可以将所有员工都设置好(前提是员工的排列顺序在两个表里是相同的)。追问如果不是2张,是100张呢
追答一样的道理啊,只要指定文件路径和名称
热心网友 时间:2022-07-13 15:32
总.xls、a.xls和b.xls都打开
然后在总.xls的A1输入公式==[a.xls]Sheet1!$A$1,A2输入公式==[b.xls]Sheet1!$A$1
然后关闭a.xls和b.xls即可
热心网友 时间:2022-07-13 15:33
把三个文件都打开。在总表格里一个单元格输入=,接着用鼠标单击A表格的A1单元格按回车键。你同样的方法引用B表格的A1单元格。需要注意的是,引用后,表格a和表格B的保存位置,文件名,文件夹名等都不可以更改。