EXCEL 删除行 VBA?

  在VBA中,可以使用for循环,也可以使用For Each进行循环。

  循环在VBA中,可以方便的获取EXCEL中的行列数据,甚至是指定的行列数据。

  但是,很多人只知道或常用FOR自增的循环,却未知FOR循环中的递减循环,却是如此的玄妙。

  今天,本人遇到一个使用VBA删除动态行的问题,老是解决不了,忽然灵光一现,想起了使用FOR递减循环的方式删除,终于得以将问题解决。

  下面,俺就将for循环中的递减循环是如何动态删除行代码,拿出来与大家分享。

  下面我们先看for递减循环的语句:

    '这里是你的代码

  上述是for递减循环的语法。其中Max表示大值;Min表示小值。也就是说,for循环中的变量,是从大值Max逐渐变到小值Min的。在变化的过程中,每变一次,i变量的值减小多少,这个是由Boot步长来决定的。可以设置为1,也可以是2,也可以是3…一切由我们来决定。

  以上的i值,从8变到0,每变一次,i减少2。这就相当于:

  以上的递减循环,其实只执行了五次,即五步。

  ②使用for递减循环删除行

  比如,您的Excel表中,1到9行的是固定的,不允许你删除;而表格的最后两行,也是固定的,不能删除的。现在的问题是从10行到倒数第三行,这个范围,行数是变化的,不知道啥时候有多少行,现在,叫你删除这些动态行,你该如何删除呢?

  如上问题的for递减循环删除动态行代码如下:

  上述可能太抽象了点,下面,本人给出一个更简单的。比如,叫你使用VBA删除4到8行,这样,就相当于让你使用VBA删除第4、第5、第6、第7、第8行。如何删除呢?代码如下:

EXCEL VBA 求高手用VBA写一段删除重复值(按行)的

EXL VBA 求高手用VBA写一段删除重复值(按行)的代EXCEL VBA 求高手用VBA写一段删除重复值(按行)的代码请看附件:
  • 你好,很高兴为您解答。 
    代码在附件中,考虑到用循环比较的方法当数据很多时效率比较低,故使用了字典,字典采用的是前期绑定法,所以在引用里要把Mcrosoft Scripting Runtime项选中。具体见附件。

我要回帖

更多关于 vba删除文件夹下所有文件 的文章

 

随机推荐