在上一期我们说到range的用法了,这次我们说说单元格的另一种表示方法。它使用的属性和range是非常类似的。
我们通过查询MDSN上对Cells的解释就可以发现,他有3种使用方法:
![75ee524f1505d6b4ab96647bc155576e.png](https://i-blog.csdnimg.cn/blog_migrate/6e41b3ffeaed724e70ca8760531c6e82.jpeg)
对象.cells(rowsindex,colunmindex)
对象.cells(rowindex)
对象.cells
可能以上的三种方式,你还是不太熟悉,我们举一个通俗一点例子:
1、对象.cells(rowsindex,colunmindex)
假如我们想在sheet1中的A1单元格输入100,是这样写代码的。
Worksheets("sheet1").Cells(1, 1) = 100
我们来说说cells(1,1)的含义,前面的一个数字1,代表的是第一行,后面的一个1代表的是第一列。是不是发现使用Cells比range更好理解一点呢?
![25c6eea7075c4b110030334e2724d49a.png](https://i-blog.csdnimg.cn/blog_migrate/f413bd1b77e3c1ddf81b00eb0f640bd7.jpeg)
PS:需要说明的是在我们excel种使用Cells这个时候,他的行和列是有最大值的,我们一旦超过最大值就会报错。行的最大值为1048576,列的最大值为16384.
2、对象.cells(rowindex)
这个使用方法很简单也很有意思,他的最大值为行和列的所有单元格数目相加,即他的最大值为17179869184.这个数字和我们的Excel中的单元格的数目是相等的。理解这个的时候,可以这么理解,单元格从A1到XFD1换行,然后A2到XFD2,如此进行循环。
假如我们想在第520个单元格输入这个值,那么代码是如何去写写呢?
其实很简单的, Worksheets("sheet1").Cells(520) = 520.
这代码的意思就是在第520个单元格输入520值。
![dc5e5aebf0e07df39802dbc91c2a2878.png](https://i-blog.csdnimg.cn/blog_migrate/121deb358ae7e3e058079ef66e8b32ab.jpeg)
3、对象.cells
这个的使用方法可以说是非常强大的,这种方法返回的是所有工作表上的单元格,请注意和前面的2种方法区分来。
例1, 假如我们需要清除sheet1中的单元格的所有值,代码是这样写的。
代码为Worksheets("sheet1").Cells.Clear,这个的意思就是清除单元格中的所有内容。这个在我们清除单元格的内容的时候用的很多的。
![430873d400a4464b57045bf0b9aabf64.png](https://i-blog.csdnimg.cn/blog_migrate/7385dbd94a5d7a11770ebd4454cadd4a.jpeg)