宏代码删除行直到定义的列

时间:2018-08-30 11:34:14

标签: excel vba

如何限制宏仅在特定范围内起作用,比如说直到特定列?

我有一种情况,宏需要根据条件删除行。我还想在右边添加一些指令,并为宏设置一个窗体控制按钮,但是似乎每次激活代码时,它都会删除该行中的所有内容,包括我所做的指令和按钮。因此,我想定义一个宏应处于活动状态的范围。

我激活了以下逻辑。

  1. 首先标记要检查的项目。
  2. 在循环中,继续检查并删除行。
  3. 根据其他条件删除行。

代码工作正常,但是我想增加限制,直到某些列如所述为止。

我在哪里定义范围?用三种不同的逻辑,还是一次放在顶部? 任何帮助将不胜感激。

BR,

Manny

2 个答案:

答案 0 :(得分:0)

听起来您已经告诉您的代码删除整个行。例如,如果您只希望宏删除A到G列中的数据,则使用

行中的代码
Range("A" & rownumber & ":G" & rownumber).Delete Shift:=xlUp

答案 1 :(得分:0)

您需要用仅删除设置范围的代码替换删除整个行的代码行。因此,例如,代替

Rows("12:12").Delete Shift:=xlUp

您将拥有

Range("A12:N12").Delete Shift:=xlUp