如何将一个EXCEL中的多个SHEET中内容合并到一个SHEET中 在EXCEL工作表中怎么把多个sheet的数据内容合并到一个...
\u5982\u4f55\u5c06\u4e00\u4e2aexcel\u91cc\u9762\u7684\u591a\u4e2asheet\u5feb\u901f\u7684\u5408\u5e76\u5230\u4e00\u4e2asheet\u91cc\u9762\uff1f5\u5206\u949f\u5b66\u4f1a\u5728Excel\u4e2d\u5982\u4f55\u628a\u591a\u4e2a\u5de5\u4f5c\u8868\u5408\u5e76\u6210\u4e00\u4e2a\u8868 N\u5e38\u7528\u7684\u6280\u80fd
将一个EXCEL中的多个SHEET中内容合并到一个SHEET中的具体操作步骤如下:
1、首先我们要有自己的excel数据,然后我们打开电脑里的microsoft excel加载要合并的数据。
2、看到这么多数据页要合并,如果是复制粘贴的话,工作量就很大了。我们现在开始合并,首先要在最前页新建一个工作表。
3、在新建的sheet表中“右键”,找到“查看代码”。
4、然后看到宏计算界面。
5、看到宏计算界面,我们就只需要把下面的代码复制进去。
6、做完上面的事情,然后只需要点击工具栏上面的“运行”下的“运行子过程/用户窗体”就可以了,合并完之后会有提示。提示完成之后就可以把宏计算界面关闭了。
7、合并后的效果如下图,我们看到的是合并之后有8000多行,就是205页合并后的结果。
5分钟学会在Excel中如何把多个工作表合并成一个表 N常用的技能
新建一个总表,准备汇总
Alt+F11,VBA快捷键,在弹出的新界面中,左键双击坐标的名为”总表“的工作表,使后续的代码是复制到这个工作表中。
在右边的空白区域,复制下面的代码:
Sub main()
For Each sh In Sheets
If sh.Name <> "总表" Then
i = sh.Range("D65536").End(3).Row
k = Range("A65536").End(3).Row
sh.Range("A2:D" & i).Copy Range("A" & k + 1)
End If
Next
End Sub
代码详解:1.Sub main()——其中Sub 跟括号是固定的,main是宏名,可以随便更改(其实完全没有必要多此一举,这里可以不做任何修改)2.For Each sh In Sheets——这是遍历全部的工作表,这里就要注意,如果你的工作表中包含一些,不需要汇总数据的工作表,那么就需要将源数据表备份一份,然后将不需要汇总数据的工作表都删除掉,只剩下总表以及需要汇总数据的工作表(当然,还有其他办法,这里只讲解最简单地做法)3.If sh.Name <> "总表" Then——这里是判断工作表的名字是不是”总表“,如果是总表,就不汇总数据,本例中总表的名字就是”总表“,如果你的工作表中,总表名字是其他的,就将这里的”总表“改为你的工作总表明细;4.i = sh.Range("D65536").End(3).Row——这里要注意了"D65536",是为了获得最后一个不为空的行的行号,这里用了D列,因为本例中的D列是有数据的
,在实际的使用过程中,一定要选择一个最后一行有数据的列,否则不能获得最大行号(假如只有2列,那么这里的D可以改为B或者A)5.k = Range("A65536").End(3).Row——这里是获得总表的最大行号,以便复制的数据,能够依次往下粘贴;(这里的A65536跟上面提到的是一个道理,总表中的A列最后一行不是空的)6.sh.Range("A2:D" & i).Copy Range("A" & k + 1)——这里要注意“A2:D”&i是要复制的区域,因为本例中只有A-D列,而且数据是从第2行开始的,所以这里是A2:D,那假如是从E列第10行开始,到Z列结束的区域,就应该改为E10:Z;Range("A" & k + 1)——这里是从总表的A列开始粘贴,假如是从D列开始,那么这里的A改为D即可7.End If Next End Sub——这些是结束判断、继续循环和程序结束,都不需要更改。
保存执行代码
以WPS 2019版本为例:
关于如何将一个EXCEL中的多个SHEET中内容合并到一个SHEET中,您可使用WPS参考下述步骤完成操作:
1、打开「表格(Excel)」文档;
2、点击「数据-合并表格-多个工作表合并成一个工作表」;
3、勾选需合并的工作表即可。
提示:在设置合并工作表时也可添加其他「表格(Excel)」文档来选择其他文档的工作表来合并。
亲,请新建一个Sheet,命名为“汇总”(名字可以随便改)。然后按“Alt+F11”打开VBA编辑窗口,在左侧对应的Sheet“汇总”上双击,右侧空白处粘贴下面的代码。关闭VBA窗口。然后按“Alt+F8”打开宏窗口,选择刚插入的宏,点击“执行”。
Sub hz()
Dim bt, i, r, c, n, first As Long
bt = 1 '表头有几行,这里的1就改成几
Cells.Clear
For i = 1 To Sheets.Count
If Sheets(i).Name <> ActiveSheet.Name Then
If first = 0 Then
c = Sheets(i).Cells(1, Columns.Count).End(xlToLeft).Column
Sheets(i).Range("A1").Resize(bt, c).Copy Range("A1")
n = bt + 1: first = 1
End If
r = Sheets(i).Cells(Rows.Count, "A").End(xlUp).Row
Sheets(i).Range("A" & bt + 1).Resize(r - 1, c).Copy Range("A" & n)
n = n + r - bt
End If
Next
End Sub
绛旓細D1鍏紡涓 =TEXT(OFFSET(S$1,INT((ROW(A1)-1)/(LEN(P$1)-LEN(SUBSTITUTE(P$1,",",""))+1)),),"h:mm")E1鍏紡涓 =TEXT(OFFSET(T$1,INT((ROW(A1)-1)/(LEN(P$1)-LEN(SUBSTITUTE(P$1,",",""))+1)),),"h:mm")涓嬫媺澶嶅埗鍏紡 濡傛灉纭畾P鍒楁瘡涓崟鍏冩牸鍐呯殑鏁版嵁涓暟鏄浐瀹...
绛旓細EXCEL涓瀵瑰悓涓涓琛ㄦ牸杩涜涓ゅ潡鐙珛绛涢夌殑鏂规硶濡備笅锛1.灏嗕袱涓伐浣滆〃鏀惧湪涓涓獥鍙d腑锛屽鍥炬墍绀猴細sheet1鏄叏閮ㄥ鐢熺殑锛宻heet2鏄煇鐝鐢熻姳鍚嶃2.鍦╯heet1鐩稿搴斿悕瀛楀悓涓琛岀殑绌虹櫧鍑鸿緭鍏=if锛坈ountif锛堬級锛夈3.鐒跺悗鍒囨崲鍒皊heet2锛岄変腑鍏ㄩ儴鍚嶅瓧骞跺洖杞︺4.鍐嶅垏鎹㈠埌sheet1锛岃繖鏃惰繖涓嚱鏁板彉鎴愪簡=if(countif(...
绛旓細1銆佹墦寮Excel宸ヤ綔绨匡紝閫変腑瑕佸彂閫佺殑宸ヤ綔琛紝鐐瑰嚮榧犳爣鍙抽敭閫夋嫨绉诲姩鎴栧鍒躲2銆佽繘鍏ョЩ鍔ㄦ垨澶嶅埗椤甸潰鍚庯紝鍙互鍦ㄥ伐浣滅翱涓夋嫨涓涓鏂板伐浣滅翱锛屽嬀閫夊缓绔嬪壇鏈紝鐒跺悗鐐瑰嚮纭畾銆3銆佺偣鍑荤‘瀹氬悗锛屽氨鍙互鎶婇偅涓伐浣滆〃澶嶅埗鍒颁竴涓柊鐨勫伐浣滅翱涓4銆丆trl+S淇濆瓨锛屾妸杩欎釜宸ヤ綔绨垮彂缁欏鏂瑰氨鍙互浜嗐
绛旓細file(n) = PathStr & IIf(Right(PathStr, 1) = "\", "", "\") & FileStr FileStr = Dir()Wend If n = 0 Then MsgBox "娌″彂鐜excel鏂囦欢": Exit Sub Set ActiveWb = ActiveWorkbook HeadRows = Application.InputBox("璇风‘璁ゅ緟鍚堝苟宸ヤ綔绨跨殑鏍囬琛屾暟锛屾敼琛屽皢浜х敓鍦ㄥ悎骞跺伐浣滆〃涓綔涓烘柊...
绛旓細璁♀濓紱涓嶅簲涓涓涓嶆爣鑰屽彟涓涓爣搴忓彿锛涗笉寰楀涓嶅悓琛ㄧ殑鐩稿悓鍚嶇О杩涜涓嶅悓浣嶇疆鐨勫己鍒舵崲琛岀瓑)锛屼笉寰楅噸鍚(濡備袱涓滃叾浠栤濈瓑)銆2銆佹墦寮鏈〃锛屾寜浣廠HIFT鐐规渶鍚庝竴寮犲垎琛(濡傘4鍐呭垎娉屻)鏍囩锛屽嵆閫変腑鍏ㄩ儴鍒嗚〃锛屽湪浠讳竴鍒嗚〃C5杈撳叆鍏紡鈥=SUMPRODUCT((鏀跺叆!$B$3:$B$50=$C$3)*(鏀跺叆!$C$2:$S$2=$...
绛旓細鎮ㄥ彲浠ュ湪涓夌淮寮曠敤涓娇鐢ㄤ互涓嬪嚱鏁帮細鍑芥暟 璇存槑 SUM 灏嗘暟鍊肩浉鍔犮侫VERAGE 璁$畻鏁板肩殑骞冲潎鍊硷紙绠楁湳骞冲潎鍊硷級銆侫VERAGEA 璁$畻鏁板硷紙鍖呮嫭鏂囨湰鍜岄昏緫鍊硷級鐨勫钩鍧囧硷紙绠楁湳骞冲潎鍊硷級銆侰OUNT 缁熻鍖呭惈鏁板肩殑鍗曞厓鏍兼暟銆侰OUNTA 缁熻闈炵┖鍗曞厓鏍兼暟銆侻AX 鏌ユ壘涓缁勬暟鍊间腑鐨勬渶澶у笺侻AXA 鏌ユ壘涓缁勬暟鍊间腑鐨勬渶澶у硷紙鍖呮嫭鏂囨湰鍜...
绛旓細excel濡備綍鍦涓涓宸ヤ綔琛ㄥ唴璁剧疆澶氫釜琛ㄥご 娌¤娓呮闇瑕佽揪鍒颁粈涔堢洰鐨勩濡備綍鎶奅XCEL澶氫釜宸ヤ綔琛ㄧ殑鍐呭鍚堝苟鍦ㄤ竴涓伐浣滆〃涓 Sub 姹囨绘暟鎹() Sheets.Add With ActiveSheet .Name = "姹囨昏〃" & Format(Now, "hhmmss") For Each s In ThisWorkbook.Sheets s.UsedRange.Copy .Cells(.UsedRange.Rows....
绛旓細num = xlsread(filename,sheet, 'range')鍏朵腑range鎸囧畾涓涓鐭╁舰鐨勫尯鍩燂紝鐢ㄥ崟寮曞彿鎷捣鏉ワ紱渚嬪锛'D2:H4'浠h〃浠2鍜孒4涓哄瑙掑畾鐐圭殑鐭╁舰鍩;褰excel涓鏈夊悎骞跺崟鍏冩牸鏃讹紝浠讳綍涓涓悎骞跺墠鐨勫崟鍏冩牸鐨勫悕瀛楋紙姣斿D1锛夐兘浼氭寚浠f暣涓悎骞跺悗鐨勫崟鍏冩牸锛岃屽皢鏁翠釜鍗曞厓鏍艰鍏ワ紝鎵浠ヤ负浜嗛伩鍏嶉夯鐑︼紝灏介噺閬垮厤鍦ㄩ渶瑕佽鍏ョ殑...
绛旓細Sub t()Dim s As Worksheet For i = 1 To ThisWorkbook.Sheets.Count Set s = ThisWorkbook.Sheets(i)s.Protect ("password")Next End Sub 杩愯涓涓嬪氨鍙互浜嗐 娉ㄦ剰锛氫笂闈㈢▼搴忚瀹氫簡淇濇姢瀵嗙爜 鈥減assword鈥
绛旓細姝ラ涓夛細Microsoft Excel蹇熷悎骞澶氫釜宸ヤ綔绨胯嚦涓涓宸ヤ綔绨夸娇鐢ㄦ柟娉曘傛墽琛孷BA浠g爜锛岄鍏堥渶瑕佸湪鑿滃崟鏍忎腑鏄剧ず銆愬紑鍙戝伐鍏枫戙傛樉绀恒愬紑鍙戝伐鍏枫戣缁嗘搷浣滄祦绋嬭鍙傜収锛歅PT灏忔妧宸э細濡備綍鎶瑙嗛宓屽叆鍒癙PT婕旂ず鏂囩涓悎骞舵垚涓涓枃浠讹紵PPT鍜孍xcel鎿嶄綔娴佺▼鍩烘湰涓鑷淬傚乏閿崟鍑昏彍鍗曟爮涓殑銆愬紑鍙戝伐鍏枫戦夐」鍗★紝宸﹂敭鍗曞嚮銆愪唬鐮併...