ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > 我的酷贴 > Excel VBA > 如何复制合并单元格中某一行的内容?

如何复制合并单元格中某一行的内容?

作者:绿色风 分类: 时间:2022-08-18 浏览:220
楼主
zzmxy
Q: 在有合并单元格的数据区域中,如何能得到其中某一行的内容?(如下图“紧急”栏为“是”的第4、6行内容)

 



A: 如判断得到有“是”的单元格为cell,我们先用Cells(cell.Row, 1).Resize(1, 11).Copy 目标地址 将这一行的内容复制到目标地址,
此时,如果A列是合并单元格,当前行又非合并的开始位置时,,这时,我们可以用End(xlUp)来得到合并的值。
具体示例完整代码如下,可参考代码第9行、13行的写法:
  1. Sub Urgent()
  2.     Set Rng = Range("E4", Cells(Rows.Count, "E").End(3))
  3.     i = 4: t = 4
  4.     Sheet3.Range("A4:K800").ClearContents
  5.     Sheet4.Range("A4:K800").ClearContents
  6.     For Each cell In Rng
  7.         If cell.Value = "是" Then
  8.             Cells(cell.Row, 1).Resize(1, 11).Copy Sheet3.Cells(i, 1).Resize(1, 11)
  9.             If Cells(cell.Row, 1) = "" Then Sheet3.Cells(i, 1) = Cells(cell.Row, 1).End(xlUp)
  10.             i = i + 1
  11.         ElseIf cell.Offset(0, -3).Value <> "" Then
  12.             Cells(cell.Row, 1).Resize(1, 11).Copy Sheet4.Cells(t, 1).Resize(1, 11)
  13.             If Cells(cell.Row, 1) = "" Then Sheet4.Cells(t, 1) = Cells(cell.Row, 1).End(xlUp)
  14.             t = t + 1
  15.         End If
  16.     Next
  17. End Sub

如何复制合并单元格中某一行的内容?.rar
2楼
eliane_lei
进来学习!谢谢分享!

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap