一、 Range,Cells 选择单元格的用法 ① Range属性选择单元格 1.选择单个单元格(例如 A5) Range("A5").Select 2.选择一个单元格区域(例如 A6:A10) Range("A6:A10").Select 3.选择一些不相邻的单元格(例如 A1,B6,C8) Range("A1,B6,C8").Select 4.选择一些不相邻的单元格和单元格区域(例如 A11:D11,B7,C9) Range("A11:D11,B7,C9").Select ② Cells属性选择单元格 1.选择单个单元格(例如 A5) Cells(5,1).Select Cells(5,A).Select 2.选择一个单元格区域(例如 A6:A10) Range(Cells(6,1),Cells(10,1)).Select 3.选择工作表中的所有单元格 Cells.Select ③ Cells属性在 VBA 代码中应用 Set r = Cells ' 应用于 Application 对象,Application 省略 Set r = Application.Cells ' 应用于 Application 对象 Set r = Worksheets(1).Cells ' 应用于 Worksheet 对象 Set r = Range("A1:C5,B2:D6").Cells ' 应用于 Range 对象,这个就我个人而言,找不出很好的应用 ' b. 区域左上角和右下角的单元格 Set r = Range(Range("A1"), Range("IV65536")) 二、 Range 和 Cells 的理解和应用 1. 单元格行号列标里面有变量时的表达方法 Range("A" & i)和 Cells(i,1)比较常用,Cells(i,"A")这种引用方法一般是当列标号较大(BJ,IV),不易计算时,可以直接用双引号加列标作为第二参数) 2. Range、Cells的差异 Range(A1) Cells(1,1) [a1] 可以引用的对象 单元格、区域、多区域、整行、整列 单元格 单元格、区域、多区域、整行、整列 自动列出成员 支持 不支持 不支持 用于代码循环 行循环 行循环、列循环 不支持 输入简便性 差 差 好 支持参数 索引号、Item 和 Cells Item 和 Cells 不支持 从以上比较中可以发现,Cells()的优势在于代码循环中可以进行行与列循环,缺点是无法引用区域;Range的优势在于支持自动列出成员,支持行循环和参数,缺点是书写时不够方便、不支持列标循环;而[A1]方式的优势在于书写方便,可以引用区域,缺点是不支持循环和不能自动列出成员。 其中需要强调的有三点:支持自动列出成员和循环。 (1)自动列出成员 对象是否支持自动列出成员是很重要的一个特点,在编写代码时,可能程序员对某些属性或者方法不够熟悉,需要借助自动列出成员来快速完成。那么需要记住用何种方式可以调用其成员。 在单元格的三种引用方式中,仅仅第...