ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 1456|回复: 6

每52行插入一行固定内容?

[复制链接]

TA的精华主题

TA的得分主题

发表于 2017-3-10 08:56 | 显示全部楼层 |阅读模式
详见附件,附件的代码是每52行(不包括标题行)插入空行  我想实现空行变2行,变具体的文字 如:“     制表人:     审核人:     ”  还有一行“制表日期:”  请高手指点 万分感谢!!!!!!!!!!!!!!!

每52行插入一行固定内容 怎么弄 ,例子是空行 我想固定内容 比如“制表人指标日起”.zip

14.49 KB, 下载次数: 10

11111

TA的精华主题

TA的得分主题

发表于 2017-3-10 09:19 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
把下面的代码在复制一次就行。
Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-3-10 09:22 | 显示全部楼层
一望无垠 发表于 2017-3-10 09:19
把下面的代码在复制一次就行。
Selection.EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove

不行吧 那复制不是插入2个空行吗 我要有内容的 亲

TA的精华主题

TA的得分主题

发表于 2017-3-10 09:50 | 显示全部楼层
供参考
  1. Sub 插入()

  2. Dim I, J As Integer

  3. I = 2

  4. Const MM = 52 '每个52行插入1行

  5. J = 0

  6. Do While Cells(I, 1) <> "" '表头默认为第一行,当第一列数据为空时,表示数据项结束

  7.     If J Mod MM = 0 Then

  8.      Range(Cells(I, 1), Cells(I + 1, 1)).EntireRow.Insert , CopyOrigin:=xlFormatFromLeftOrAbove
  9.    
  10.      Range(Cells(I, 1), Cells(I, 2)).Value = Array("制表人:", "审核人")
  11.      Cells(I + 1, 1).Value = "制表日期:"

  12.      I = I + 1

  13.     End If

  14. I = I + 1

  15. J = J + 1

  16. Loop

  17. End Sub
复制代码

TA的精华主题

TA的得分主题

 楼主| 发表于 2017-3-10 12:12 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2017-3-10 19:47 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
QZBS2012 发表于 2017-3-10 12:12
请测试,我发现第二行第三行 就出现制表人 制表日期了
  1. Sub 插入()

  2. Dim I, J As Integer

  3. I = 2

  4. Const MM = 52 '每个52行插入1行

  5. J = 0

  6. Do While Cells(I, 1) <> "" '表头默认为第一行,当第一列数据为空时,表示数据项结束

  7.     If J Mod MM = 0 And J > 0 Then

  8.      Range(Cells(I, 1), Cells(I + 1, 1)).EntireRow.Insert
  9.    
  10.      Range(Cells(I, 1), Cells(I, 2)).Value = Array("制表人:", "审核人")
  11.      Cells(I + 1, 1).Value = "制表日期:"

  12.      I = I + 2

  13.     End If

  14. I = I + 1

  15. J = J + 1

  16. Loop

  17. End Sub
复制代码

TA的精华主题

TA的得分主题

发表于 2017-3-12 23:27 | 显示全部楼层
上面的优点麻烦,用for 循环会简单很多,只要几行代码就行
for i=2 to cells(rows.count,2).end(xlup).row step 52'我没看你的实例,假设是从第二行开始
       要插入的内容
next
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-5-15 00:55 , Processed in 0.046157 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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