返回目录:excel表格制作
1.首先把需要合并的excel工作薄整理到一个文件夹中,如图,用来合并到一起的工作薄的名字要注意,这里取名叫“合并工作薄”。
2.打开这个excel表,直接按键ALT+F11,进入下图界面。双击如图所示位置的sheet1。
3.如图,打开准备好的VBA代码,复制到这个空白的代码编译处,代码如下:
Sub 工作薄间工作表合并()
Dim FileOpen
Dim X As Integer
Application.ScreenUpdating = False
FileOpen = Application.GetOpenFilename(FileFilter:="Microsoft Excel文件(*.xls),*.xls", MultiSelect:=True, Title:="合并工作薄")
X = 1
While X <= UBound(FileOpen)
Workbooks.Open Filename:=FileOpen(X)
Sheets().Move After:=ThisWorkbook.Sheets(ThisWorkbook.Sheets.Count)
X = X + 1
Wend
ExitHandler:
Application.ScreenUpdating = True
Exit Sub
errhadler:
MsgBox Err.Description
End Sub
4.注意事项,如图,注意工作薄的名字,同时,注意代码中设定的excel版本。如果出现无法编译的情况,可以用这个共享的txt。
5.回到“合并工作薄”的excel表格中,如图,点击工具(没有的到excel的选项中添加),选择宏。
6.选择宏以后会出现下图界面,直接双击图中选项。
7.双击后弹出选择待合并的文件夹中工作薄,直接全选要合并的工作薄即可。
8.如图,这就是合并后的效果,这两个工作薄是下载的2014年的高考录取分数线的内容e799bee5baa6e79fa5e98193e59b9ee7ad94339,效果不错,而且合并工作薄本身的工作表是不会被占用的,是新建的工作表。
1. 增加一个工作百表sheet,重命名xx 。
2. 点到新增加的工作表中,按ALT+F11,出现如图的对话框。
3.双击名称xx的图标度。出现如下对话框。
4. 在上图红色的区域复制上知如下代码。
Sub GetStName()
Dim FinalRow As Long
Dim St As Worksheet
FinalRow = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row + 2
For Each St In ThisWorkbook.Worksheets
Cells(FinalRow, 1).Value = St.Name
FinalRow = FinalRow + 1
Next St
End Sub
5.把名称为xx的图表的属性改为sheet1(这需要把道原先那个sheet1,改为其他的sheet,不和其他工作版表重复即可权
6.点击菜单中的执行的三角符号,就可以合并所有sheet的工作表内容到一个工作表中