龙空技术网

Excel VBA 使用Cells属性实现双重循环

阿杰漫步 1025

前言:

此刻大家对“用双重循环输出乘法口诀表”大约比较注重,朋友们都需要了解一些“用双重循环输出乘法口诀表”的相关资讯。那么小编在网络上收集了一些关于“用双重循环输出乘法口诀表””的相关内容,希望姐妹们能喜欢,你们一起来了解一下吧!

回顾一下上文内容,Range与Cells都可以作为Application对象的属性来获得当前活动工作表的Range对象。比如说在A1单元格里写入100,通常是简化了写法直接省略了Application,写成了Range("A1")=100或者说Cells(1,1)=100。如果不简写,实际代码是这样的。

这里稍作了解即可,只需要记住它们都是Application的属性。现在比较一下这两种属性的区别,Range用来表示单元格时范围更广,因为它可以写成Range("A1:F20")等表示单元格连续区域的形式,不连续的也可以,比如:Range("A1:B5,C4,D8:E9"),就像用鼠标手动框选单元格一样,写在代码里也同样能表示出来。相比较而言Cells(x,y)只能通过行列号来表示成一个单元格。当然Cells也有它具备的优势,它很容易实现行列双循环,行号与列号的参数都能当成变量来处理。

这里讲一下最经典的案例,九九乘法口诀表,以A1单元格为起始点,一共9行9列,行号与列号直接相乘得出结果写入单元格区域内。

来看一下代码:

Sub zzz()Dim i As Integer, j As IntegerFor i = 1 To 9    For j = 1 To 9    Cells(i, j) = i * j    Next j    Next iEnd Sub

运行后结果如下:

像这种一个循环里面嵌套了另一个循环就称为双重循环,很显然行号 i 为最外层的For循环,列号 j 是里面的一层For循环。代码执行起来就是先执行最外层的循环,每到一行计算当前行数与列数(从1到9)相乘的结果,比如说第1行结果就是{1.2,3,4,5,6,7,8,9},分别从左到右写入这一行单元格内,第2行就是{2,4,6,8,10,12,14,16,18},以此类推...直到算到第9行为止。

如果文字没能讲明白,请看这张图:

今天的文章介绍到这里,感谢阅读,祝大家端午安康!

标签: #用双重循环输出乘法口诀表