【问题标题】:Merge two cells vertically and create loop until last row [closed]垂直合并两个单元格并创建循环直到最后一行
【发布时间】:2017-02-16 20:17:53
【问题描述】:

我目前很难运行一个循环来垂直合并两个单元格。在图片中你可以看到我在说什么:我需要合并 C1 和 C2,然后继续合并 C3 和 C4 等等……直到没有更多数据。

有人可以帮我吗?我只是不知道如何创建一个循环,其中包含所有空行.. 谢谢 安迪

【问题讨论】:

  • 请发布您的尝试,即使它没有成功。
  • 我会这样做,但我真的不知道该怎么做..

标签: vba excel merge


【解决方案1】:

使用类似的东西,

Dim lastR as Integer

'get the last used row in col C
lastR = Sheets("Sheet1").Cells(Rows.Count, 3).End(xlUp).Row

For i = 1 to lastR step 2
   Range(Cells(i, 3), Cells(i + 1, 3)).Merge
Next i

其中 10 是您想要走多远,i 是起始行,3 是第 3 列,C。

【讨论】:

  • 哇,“一步”是我以前从未听说过的好动作。谢谢你,完美运行!有没有机会找到最后一行而不是第 10 行?必须以某种方式说 lastrow 是在最后一个内容发生后出现两个空的地方......或者我错了吗?
  • @AndyWeinzierl 请参阅此处了解查找最后一个单元格然后添加 1 的方法:stackoverflow.com/questions/11169445/…
  • 谷歌搜索“Excel 查找最后一行 VBA”会给你答案,但我已经编辑了这个问题。
  • 我知道如何找到最后一行,但不适用于中间有空的情况..
  • 嗯,好的,最好是从下往上,Rows.Count 会选择最后一行,然后 `End(xlUp) 会到最后使用的单元格。
猜你喜欢
  • 1970-01-01
  • 2021-04-22
  • 1970-01-01
  • 1970-01-01
  • 2014-11-21
  • 2021-10-07
  • 1970-01-01
  • 2011-07-23
  • 1970-01-01
相关资源
最近更新 更多