网站大量收购闲置独家精品文档,联系QQ:2885784924

excel,vba代码应用到所有表格.doc

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
excel,vba代码应用到所有表格 篇一:EXCEL常用VBA代码 删除B列中字符串数值少于21的单元格所在的行 Sub 删除行() r = Range(B65536).End(xlUp).Row #39;行数 For h = r To 1 Step -1 If Cells(h, 2) lt; 21 Then Cells(h, 2).EntireRow.Delete Next End Sub 【工作表合并】将同一工作簿中的所有工作表合并到一个工作表中 新建一个工作表,写入代码[在新建的工作表标签处右键 查看代码(找不到的直接按一下alt+F11) 把下面 的代码复制进去 然后点上面的运行 运行子程序即可]: Sub 合并当前工作簿下的所有工作表() Application.ScreenUpdating = False For j = 1 To Sheets.Count If Sheets(j).Name lt; ActiveSheet.Name Then X = Range(A65536).End(xlUp).Row + 1 Sheets(j).UsedRange.Copy Cells(X, 1) End If Next Range(B1).Select Application.ScreenUpdating = True MsgBox 当前工作簿下的全部工作表已经合并完毕!, vbInformation, 提示 End Sub ********************************************************* 代码这样写也行: Sub c() For i = Sheets.Count To 2 Step -1 Sheets(i).Select Sheets(i).UsedRange.Copy Sheets(1).Select Cells(Cells(65000, 1).End(xlUp).Row + 1, 1).Select ActiveSheet.Paste #39;Sheets(i).Delete Next i End Sub ************************************************************ 把一个工作簿中的所有表单合并成一个表单,怎么去掉重复的表头、标题行?方法如下: Sub c() For i = Sheets.Count To 2 Step -1 Sheets(i).UsedRange.Offset(1).Copy Sheets(1).Cells(65536, 1).End(xlUp).Offset(1) Next i End Sub 说明:函数OFFSET(reference,rows,cols,height,width)以指定的引用为参照系,通过给定偏移量得到新的引用。返回的引用可以为一个单元格或单元格区域。并可以指定返回的行数或列数。通俗的讲就是OFFSET(参考单元格,移动的行数,移动的列数,所要引用的行数,所要引用的列数) 参考《关于offset函数》 第三行中第一个offset(1)是假设要要去掉的表头行数,如果有2行表头,就改成offset(2),要去掉几行表头括号中的数字就改成几。第二个offset(1)表示合并以后表格与表格之间要间隔的空行,offset(1)表示不留空行,offset(2)表示间隔1行空行,以此类推。也可以这样写: Sub c() For i = Sheets.Count To 2 Step -1 Sheets(i).UsedRange.Offset(2).Copy Sheets(1).Cells(Cells(65536, 1).End(xlUp).Row + 1, 1).Offset(0) ‘这个offset(0)可以不要 Next i End Sub **************************************************************** 或者用以下宏代码 将同一工作簿中的所有工作表合并到一个新建的工作表中 按ALT+F11调出VBA窗口,插入一个模块,然后把下面的代码复制进去。 Sub hz() Set NewSheet = Sheets.Add(Type:=xlWorksheet) #39;生成一个新表 Sheets(NewSheet.Index).Move Before:=Sheets(1) #39;将此新表移动到最前面 For i = 2 To Worksheets.Count Sheets(i).Used

文档评论(0)

精品文档 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档