最新WPS办公软件学习教程_免费企业办公软件下载_金山WPS Office官网论坛

 找回密码
 
查看: 11831|回复: 32

[VBA/VBS教程] 【VBA For ET 教材连载系列】 十七

[复制链接]

397

主题

72

听众

3057

积分

测试体验团员

Rank: 14Rank: 14Rank: 14Rank: 14

该用户从未签到

金币
3
威望
5028
帖子
2011
精华
11

特殊贡献奖 最佳教程奖 活跃会员奖

发表于 2009-6-28 15:14 |显示全部楼层
分享到: 新浪微博 腾讯微博
本课时讲述Cells1,1)方式引用单元格的方法。
% D' s( Y: L; B% o8 M6 a3 a: YCells方式引用单元格有四种用法。; i: e/ C6 F! \
17.1 WorkSheet.Cells(横座标,纵座标)& A6 ]# J0 Q) h$ k1 F
8 s/ T3 l2 g. ~+ f% W
6 D3 Q; A6 A0 r: u
引用某工作表中行、列座标所指定的单元格,可以使用本方式,基本语法为:
6 @# X2 Q$ l  J5 S[Sheet].Cells([RowIndex],[ColumnIndex])——其中工作表对象可选,行与列座标也可选# y+ x3 S+ T& v/ t
本方式可以引用某个工作表中横座标与纵座标之交叉点,该座标原点在左上角,向右偏移一个单位即为A列,向下偏移一个单位即第一行,那么Cells(1,1)即为A1单元格。
0 `, m0 {& I" `如果代码中忽略工作表对象,则默认指当前工作表;如果忽略横座标与纵座标号,则默认引用所有单元格。5 \9 O5 n# @  B# Y* S6 o
以下是几种合法的单元格引用:5 w7 Y$ h! \8 k
Sheets(1).Cells(5, 4)——表示引用第一个工作表中行座标为5、列座标为4的单元格D5
0 P" H2 T9 F6 P- e& a) O# Z, Z提示:ET的最大行是65536,最大列是IV列,对应的数值为256,那么Cells的第一参数只能在165536之间,第二参数只能在1256之间,否则将产生运行时错误。
$ r; a/ d! h* m) J) c: h& {9 a17.2 WorkSheet.Cells(行号,列标)
: H+ q- \& v- c2 }1 p/ _' ?
本引用方式依靠目标地址的行号与列标来确定目标单元格。其中行号与列标两个参数都是必选参数。而工作表对象Worksheet则是可选参数。0 u5 o2 G8 t# U5 @1 D3 M
以下三个引用为合法的单元格对象引用:
, X% [' P6 l9 eSheets("生产表").Cells(2, "C")——表示引用“生产表”中C2单元格  c8 V' Z  V% j  b; J
Cells(12, "Z")——表示引用当前表Z12单元格
1 ^* L6 ?+ w2 Q  E- }但是第一参数只能使用数值,文本型数字也不行。例如Cells("12", "Z")将产生错误。Excel允许这种书写方式,它会将文本“”12””转换成数值“12”,然后再引用单元格。
7 ]5 A7 Q2 ^: ]3 \( N4 t! l7 x提示:本方法引用单元格永远只能引用一个单元格,不能引用区域。( j5 ^5 f1 V( J8 `
17.3 Range.Cells(横座标,纵座标)2 ~3 h& w1 F) c( ]" p
本方式引用单元格是以其父对象Range左上角单元格做为参照系,向下及向右累加的座标系数来指定单元格。有别于第一种在工作表中A1单元格为参照。
) |% m6 J2 I& M; v: \- Q4 F& O例如以下单元格引用:
9 z6 X$ L! p4 n( c5 j' b/ i& rRange("B2:G10").Cells(2, 2)
  V" D% k& }7 h  l9 }5 I- y" h* V
5 b! u: ^" G) J. t
2 j. W% X4 z9 {$ H2 n7 m2 \; p, N$ r, r& A1 J; V, C) R4 \3 Y

$ c4 r: A0 t$ P& ^; ]/ @- H! D" v  p
5 _* l4 A2 Q8 G9 e9 X" z( H代码表示B2:G10单元格中横座标为2、纵座标为2的单元格C3。利用图展示它们的关系则可以表现为:
5 e  }- H0 b) Z+ x1 |9 C
- x& T( B- c) f: h7 a) ?2 R: a$ A8 v9 C- {# r1 i
/ s+ V5 s# V/ b+ s4 V# m
$ G( q4 L3 M1 \/ S9 c! F; J5 f1 b" `
17.1 Range("B2:G10").Cells(2, 2)图示
* d* H  [+ Y$ |+ @: D& C
图中黄色单元格如果相对于工作表,那么其横纵座标分别为33,但对于B2:G10区域,其横纵座标则为22
8 q, l- i+ c% f  `' ^% l0 a5 C: yCells的参数还可以使用小数,不过VBA会将其进行四舍五入后再计算座标。例如:& f  i/ ^/ X. F7 _
Range("B2:G10").Cells(1.5, 4.4)——表示引用B2:G10区域第二行、第四列G3单元格' m# _' ~# u  \7 Z8 A
还可以使用负数或者0做为参数,那么其座标计算方式则向左与向上偏移。例如:
5 c& P- o* N6 P+ A$ i" y+ `Range("D4:G10").Cells(-1, -1)——表示引用B2单元格+ V  q4 ^* j& p( G3 T" Q, ~$ ]  f
Range("D4:G10").Cells(0, -2)——表示引用A3单元格
; C' d. j1 }3 s0 ^" F8 r5 p17.2是负数座标的图示:
% E& L/ Q$ ]( p: j* ?5 y9 {; ]- X3 O

* [3 E: P8 k9 N, T2 P  o+ {) _6 d
  [' `! {, G- v  r8 w
  17.2
. k* v0 o3 l- @  O1 I) a
Range("D4:G10").Cells(-1, -1)
图示
, U0 b4 _: Q( ~4 o6 _, `- J* z
17.4 Range.cells(索引号)
5 f; x; L( ]+ l# K
当使用单个索引号做为参数时,它表示父对象中的一个索引子集。其编号方式是先行后列、先左后右。
8 e$ C8 `/ ~/ Z8 D/ o例如以下的引用:
4 q6 l2 I, \$ [; LRange("B2:G10").Cells(5)——表示B2:G10区域中第5个单元格F2,B2开始向右5个单位
5 }' k: h+ f8 k  l1 D8 L$ G+ URange("B2:G10").Cells(7)——表示B2:G10区域中第7个单元格B3,因父对象只有6,那么从第二行开始累加一个,即第7个单元格9 [( L" D0 e, y
索引号不允许超过其父对象的单元格个数.
例如Range("B2:G10").Cells(60) 这样引用方式已超出它的有效范围,Excel允许如此用法,这点上与Excel的引用方式不一致。
- r' Y# v9 D+ M& j
3 a* i" a: _2 @% y' N
[ 本帖最后由 wendy   于 2009-12-23 16:11 编辑 ]

本帖子中包含更多资源

您需要 登录 才可以下载或查看,

1109

主题

48

听众

1万

积分

测试体验团长

Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20

签到天数: 67 天

[LV.6]常住居民II

金币
2228
威望
33169
帖子
13495
精华
2

测试体验官 灯谜超人 世博会馆馆长 WPS粉丝团 最佳管理奖 勤奋版主奖 最佳教程奖 活跃会员奖 解答支持团 测试体验团 重阳节勋章 优秀会员奖 乐于助人奖

发表于 2009-6-28 16:06 |显示全部楼层
:victory:
WPS测试体验团欢迎您!
QQ群号:208253958 参与测试和体验WPS所有产品线的产品,包含稳定版本,内测版本,开发版,新功能日构建版本等,提交建议或BUG。
章程”、【报道
回复

使用道具 举报

0

主题

0

听众

20

积分

LV.1

Rank: 1

该用户从未签到

金币
0
威望
20
帖子
20
精华
0
发表于 2009-7-6 15:10 |显示全部楼层
果然是很复杂啊,不过还好理解上不困难,:)
回复

使用道具 举报

5

主题

0

听众

1842

积分

LV.8

Rank: 8Rank: 8

签到天数: 41 天

[LV.5]常住居民I

金币
347
威望
4997
帖子
488
精华
0
发表于 2010-1-9 15:22 |显示全部楼层
可以理解,谢罗版,讲的很明白!
回复

使用道具 举报

0

主题

0

听众

312

积分

LV.4

Rank: 4

该用户从未签到

金币
6
威望
838
帖子
66
精华
0
发表于 2013-9-2 10:14 |显示全部楼层
继续学习。
+ b3 y: A$ A' @6 @  o0 n
回复

使用道具 举报

2

主题

0

听众

636

积分

LV.5

Rank: 5Rank: 5

该用户从未签到

金币
100
威望
1771
帖子
164
精华
0
发表于 2013-11-22 17:40 |显示全部楼层
还好,这章还能理解
回复

使用道具 举报

0

主题

0

听众

8

积分

LV.1

Rank: 1

该用户从未签到

金币
0
威望
20
帖子
4
精华
0
发表于 2013-12-31 17:31 |显示全部楼层
果然是很复杂啊
回复

使用道具 举报

21

主题

36

听众

3144

积分

技术分享团员

Rank: 14Rank: 14Rank: 14Rank: 14

签到天数: 2 天

[LV.1]初来乍到

金币
933
威望
8073
帖子
1041
精华
0

WPS粉丝团 技术分享团 技巧教程分享达人 优秀会员奖 乐于助人奖

发表于 2014-1-25 12:57 |显示全部楼层
1 F6 _. i  q5 T" K# ?, {' A- W
来学习教程!支持!
回复

使用道具 举报

110

主题

18

听众

2万

积分

LV.17

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

签到天数: 1181 天

[LV.10]以坛为家III

金币
2069
威望
66760
帖子
4062
精华
0

优秀会员奖 活跃会员奖

发表于 2015-3-1 14:08 |显示全部楼层
学习一下        
回复

使用道具 举报

110

主题

18

听众

2万

积分

LV.17

Rank: 17Rank: 17Rank: 17Rank: 17Rank: 17

签到天数: 1181 天

[LV.10]以坛为家III

金币
2069
威望
66760
帖子
4062
精华
0

优秀会员奖 活跃会员奖

发表于 2015-6-21 18:31 |显示全部楼层
jsdbplt 发表于 2015-3-1 14:08
  P. a- u" ]' K  Y学习一下
, u6 a/ h! N( F7 ~- z; i
了解一下         
回复

使用道具 举报

*滑动验证:
您需要登录后才可以回帖 登录 | 更多账号登录:

快速回帖:

fastpost

WPS论坛更新日志|WPS Office官方论坛     

GMT+8, 2017-11-20 08:05

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部