ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: lzwubin

[分享] 同一工作簿下合并多工作表(1)

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2016-4-28 16:25 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
可以,交叉匹配汇总,或者先“多薄合并”、“多表合并”,或“跨表查询”

TA的精华主题

TA的得分主题

发表于 2016-4-28 16:59 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
从360云盘上重新下载最新版本,使用“多薄交叉汇总”或“多表交叉汇总”功能,可把列标题位置不同,或首行位置不同的数据,交叉汇总在一个新的工作表中

TA的精华主题

TA的得分主题

发表于 2016-4-28 20:45 | 显示全部楼层
472285981 发表于 2014-6-18 21:09
Sub hebing()
For Each st In Worksheets
    If st.Name  ActiveSheet.Name Then st.UsedRange.Offset(1 ...


Sub hebing()
For Each st In Worksheets
    If st.Name <> ActiveSheet.Name Then st.UsedRange.Offset(0, 0).Copy [a65536].End(xlUp).Offset(0, 0)
Next
End Sub
这个是从第二行开始的  我的所有sheet第一行不见了,可以修改么

TA的精华主题

TA的得分主题

发表于 2016-4-30 16:11 | 显示全部楼层
谢谢,我是新手,一路看下来,又下载了插件,楼主可谓是专家了。

TA的精华主题

TA的得分主题

发表于 2016-4-30 23:12 来自手机 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2016-5-1 01:00 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2016-5-7 12:24 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
可惜,公司的电脑不允许安装

TA的精华主题

TA的得分主题

发表于 2016-5-7 19:58 | 显示全部楼层
使用楼主的宏,用在公司2007版,会提示JC22等数据问题,是怎么回事?回头查看宏,是在这句出现黄色提示:
sht.Range("a6").Resize(xrow, 21).Copy rng  '复制记录到汇总表  
ps.我的文件是从A6单元格开始,到U列。

TA的精华主题

TA的得分主题

发表于 2016-5-7 21:33 | 显示全部楼层
lzwubin 发表于 2014-3-16 23:48
结合上文,同一工作簿下合并多工作表的最简代码,仍是两个模块,代码分别如下:

Sub hebing()

老师:帮我看一下这个代码
要求:
1、整理:有数据的单元格汇总到新的表中。(没有数据的单元格不需要汇总)
2、排序:相同类别的产品“类别名称"合并,并添加边框。


Private Sub CommandButton1_Click()
    Dim i As Integer, j As Integer
    Dim s As String
    Dim rng As Range
    Set rng = Range("a3").CurrentRegion
    rng.Sort key1:=Range("a2"), order1:=xlAscending, Header:=xlNo
    Application.DisplayAlerts = False
    With ActiveSheet
        j = .Range("a1").End(xlDown).Row
        For i = j To 2 Step -1
            If .Cells(i, 1).Value = .Cells(i - 1, 1).Value Then
                .Range(.Cells(i - 1, 1), .Cells(i, 1)).Merge
            End If
        Next
    End With
    Application.DisplayAlerts = True
    rng.Borders.LineStyle = 1
End Sub

TA的精华主题

TA的得分主题

发表于 2016-5-11 23:17 | 显示全部楼层
以上可以用“跨表查询”功能实现,从中选择字段DCE即可
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2025-1-11 14:05 , Processed in 0.021769 second(s), 5 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表