宏以复制所需部分中的文本

时间:2011-05-10 16:59:20

标签: excel-vba excel-2010 vba excel

我需要一个Excel宏来实现 1.复制字符串
2.在列的下方找到不同的字符串
3.将复制的字符串粘贴到之间的所有单元格中 4.删除部分之间的4行。
5.重复下一部分,直到整个文件完成。

数据看起来像这样
ABC
  (空白)
AM
AM
AM
文件(S)
   (空白)
DEF
   (空白)
AM
AM
AM
AM
AM
AM
文件(S)
  (空白)
GHI
  (空白)
PM
PM
PM
文件(S)
   (空白)
JKL
   (空白)
PM
PM
PM
PM
PM
PM
文件(S)

等。重复超过一百万行。

我需要它看起来像

ABC
ABC
ABC
ABC
DEF
DEF
DEF
DEF
DEF
DEF
GHI
GHI
GHI
GHI
JKL
JKL
JKL
JKL
JKL


每个部分中的行数各不相同。

1 个答案:

答案 0 :(得分:4)

执行此操作的代码非常简单(只需要几个Do ... Until循环),但是获得此解决方案的最佳方法是使用Excel中的宏 - 记录功能。

如果你将来会使用VBA,这是你第一次进入它,没有更好的方法来学习基础知识,而不是点击记录宏按钮,手动执行电子表格上的一些步骤然后看看Excel生成的代码。

您将能够看到执行所需操作所需的步骤。您需要做的唯一事情就是将这些步骤包装在一个循环中,并进行逻辑检查(If..Then)以检查单元格中的字符串,并跟踪行数。在遇到下一个字符串之前跳过(在粘贴语句中使用)。