cmd看excel有多少个子表_Excel如何从多个工作簿中自动提取相对应内容汇总到另一个工作表?...

使用VBA代码将多个Excel工作表内容合并到一个工作表中,通过输入起始和结束工作表编号实现自动汇总。代码中包含了错误检查和用户提示,以防止内容过多导致无法合并。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先要把表复制到同一个工作簿内。

按ALT+F11打开VBA插入---模块,把下面代码复制进去。

Sub 合并各工作表内容()

sp = InputBox(2)

If sp = "" Then

sp = 0

End If

st = InputBox(2)

If st = "" Then

st = 2

End If

Sheets(1).Select

Sheets.Add

If st > 1 Then

Sheets(2).Select

Rows("1:" & CStr(st - 1)).Select

Selection.Copy

Sheets(1).Select

Range("A1").Select

ActiveSheet.Paste

y = st - 1

End If

For i = 2 To Sheets.Count

Sheets(i).Select

For v = 1 To 256

zd = Cells(65535, v).End(xlUp).Row

If zd > x Then

x = zd

End If

Next v

If y + x - st + 1 + sp > 65536 Then

MsgBox "内容太多,仅合并前" & i - 2 & "个表的内容,请把其它表复制到新工作薄里再用此程序合并!"

Else:

Rows(st & ":" & x).Select

Selection.Copy

Sheets(1).Select

Range("A" & CStr(y + 1)).Select

ActiveSheet.Paste

Sheets(i).Select

Range("A1").Select '取消单元格被全选状态。

Application.CutCopyMode = False '忘掉复制的内容。

End If

y = y + x - st + 1 + sp

x = 0

Next i

Sheets(1).Select

Range("A1").Select '光标移至A1。

MsgBox "这就是合并后的表,请命名!"

End Sub

取消

评论

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值