对单元格进行绝对引用时 excel2010对单元格的引用有哪几种方式?请简述它们之间的区别?
excel2010对单元格的引用有哪几种方式?请简述它们之间的区别?
excel2010对单元格的引用有哪几种方式?请简述它们之间的区别?
共四种:
A1——相对引用
$A1——相对绝对混合引用,绝对列相对行,行会随着位置变化,列固定
A$1——相对绝对混合引用,绝对行相对列,列会随着位置变化,行不变
$A$1——绝对引用,不随位置变化而变化
Excel对单元格的引用有哪几种方式
共有四种引用形式:
A1 是相对引用
$A1 绝对引用列,是混合引用
A$1 绝对引用行,是混合引用
$A$1 绝对引用行和列,是绝对引用
F4是在四种引用间相互转换的快捷键(在编辑栏输入公式时按下F4功能键可进行切换)。
A1 在下拉拖动引用时,会变成引用A2,A3,A4...,右拉拖动时引用变成B1,C1,D1.... ;
A$1当你下拉复制时想保证引用的只是A1单元格时,A1就要加$符号,成A$1,这样在下拉时能保证对A列第一行的相对引用(即保持行号在引用时不产生变动) ;
$A1当你右拉复制时想保证引用的只是A1单元格时,A1就要加$符号,成$A1,这样在右拉时能保证对A列第一行的相对引用(即保持列标在引用时不产生变动) ;
$A$1当你在下拉和右拉复制时想保证引用的只是A1单元格时,A1就要加$符号,成$A$1,这样在下拉和右拉时能保证对A列第一行的绝对引用(即保持行号列标在引用时不产生变动)。
三种,
相对引用,如:A1,B3等等.此时公式复制到另一个位置时行和列都要变.
绝对引用,如:$A$1,$B$3等等.此时公式复制到另一个位置时行和列都不变.
混合引用,如:$A1,B$3等等.$A1此时公式复制到另一个位置时行要变,列不变.B$3此时公式复制到另一个位置时行不变,列要变.
在Excel 2003中对单元格的引用有哪几种方式?
3种咯
相对引用、绝对引用、混合引用
excel2010中,公式或函式对单元格的引用型别包括哪几种
绝对引用,相对引用个混合引用。
excel2010在公式中对单元格的引用方式有哪些
1、相对引用:A1
2、绝对引用:$A$1
3、混合引用:$A1和A$1
excel中的单元格引用有哪几种方式?
excel的单元格排列,相当于直角座标系的第四象限
excel2003的行从上向下排为1到66536行
列从左向右排为A-IV
最左上的单元格为原点,即A1单元格
第二行 第3列,就是C2
单元格的引用分为相对引用和绝对引用
所谓相对引用,就是公式中引用的单元格随公式所在单元格位置的变化而变化
比如,B2中设定公式 =A2
当把B2复制,贴上到B3时,B3的公式根据B2到B3的位置变化,相应地变成 =A3
所谓绝对引用,就是公式中引用的单元格不随公式所在单元格位置的变化而变化
仍如上例,B2中设定 =$A$2 ($号就是绝对引用的标志)
把B2公式向B3复制 其公式 仍为 =$A$2
假设B2的公式为 =$A2 则这就是所谓的混合引用
式中,列标前有$号,表示公式复制到其他位置时,列不发生变化,行号随之变化
而 =A$2 则表示公式复制到其他位置时,列变化,行不得变动
用Range可以将文字型的单元格地址转化为单元格物件引用,类似于工作表函式“INDIRECT”。它可以引用单元格、区域、整行、整列及整个工作表。
1、引用单元格
Range引用单元格的物件的方式为:单元格的列标加行号作为引数,且左右加入引号。例如:
Range(“A1”) ——表示A1单元格
Range(“C25”) ——表示C25单元格
Range(“ZZ1048576”) ——表示ZZ1048576单元格,在Excel2003中是无效的引用,因为Excel2003的最大行不超过65536行,最大列不超过IV列
Range(“A1”)本身是代表一个单元格物件,但在“MsgBox Range(“A1”)”语句中则可以获取单元格的值。事实上“MsgBox Range(“A1”)”是“MsgBox Range(“A1”).Value”的简写。
每个物件都有很多属性,同时也都有一个预设属性,而单元格的预设属性是“Value”,所以如果不明确指出属性时,那么一定是呼叫它的Value属性值。
Range引数中的引号必须是在半形状态下输入,否则必将产生编译错误。另一个重点是VBA中Range(“A1”)方式引用物件时是不区分相对引用和绝对引用的,不管使用Range(“A1”)、Range(“$A1”)、Range(“A$1”)还是Range(“$A$1”)都引用同一单元格,而且在回圈中也不产生任何影响。所以为了简化,通常只用Range(“A1”)这种形式来引用单元格。
2、引用区域
Rang引用区域时是利用区域左上角单元格地址加冒号再加右下角单元格地址为其引数。不过引数也可以写成右下单元格地址加冒号再加左上角单元格地址,VBA会自动将其转换成左上角单元格地址加冒号再加右下角单元格地址的形式。
例如以下两种方式引用区域都可以得到相同结果:
MsgBox Range(“A2:D1”).Address
MsgBox Range(“D1: A2”).Address
以下是一些合法的区域引用:
Range(“A1:V10”) ——代表从A1到V10的矩形区域,包括220个单元格
Range(“F1:F10000”) ——代表从F1到F10000的矩形区域,包括9999个单元格
Range(“D2:ZZ10000”) ——代表从D2到ZZ10000的矩形区域,包括6989301个单元格,在Excel2003是不合法的引用方式,因为它的最大列只有IV
区域的预设属性也是Value,但是区域的Value是一个数组,包括多个物件,VBA中无法直接将其显示在萤幕上。如果利用MsgBox来显示这个属性值将得到一个执行错误。
正确的方式是逐个引用区域中单个值。通过索引号作引数来实现。例如:
Range(“D2:Z10”)(1) ——代表D2:Z10区域中第一个单元格的Value,即D2
Range(“D2:Z10”)(3) ——代表D2:Z10区域中第三个单元格的Value,即F2
Range(“D2:Z10”)(24) ——代表D2:Z10区域中第24个单元格的Value,即D3
也就是说,索引号代表区域中从左到右、从上到下的序号,它是区域左上角单元格的参照进行相对引用。
如果索引号为小数时,VBA会自动进行四舍五入。例如:
MsgBOX Range(“D3:E7”)(1.5).Address ——结果为“$E$3”,引数1.5当作2处理
MsgBOX Range(“D3:E7”)(4.4).Address ——结果为“$E$4”,引数4.4当作4处理
事实上,索引号可以使用两个引数,第一引数表示行的索引,第二引数表示列的索引。那么引数“(4,5)”就可以引用区域中第四行第五列的单元格,它以区域左上角单元格为参照,而非以工作表中A1单元格为参照。
例如以下的引用:
MsgBOX Range(“D3:F7”)(1,3).Address ——结果为“$F$3”,表示D3:F7区域第一行第三列
MsgBOX Range(“D3:F7”)(4,2).Address ——结果为“$E$6”,表示D3:F7区域第四行第二列
区域的引数还可以使用零和负数,甚至大于区域单元格个数以及小于零,同样是合法的引用。当行索引引数为零时,则向区域中左上角单元格向上偏移一个单位;当列引数为零时,则向区域中左上角单元格向左偏移一个单位;如果引数是负数,在继续追加偏移量。例如:
MsgBOX Range(“D3:F7”)(0,0).Address ——结果为“$C$2”,即D3向左及向上偏移一个单位
MsgBOX Range(“D3:F7”)(-1,-2).Address ——结果为“$A$1”,即D3向上偏移两个单位再向左偏移三个单位
MsgBOX Range(“D3:F7”)(9,4).Address ——结果为“$G$11”,即D3向下偏移九个单位再向右偏移四个单位。虽然其行数与列数都已超过区域的大小,仍然可以正确的引用单元格
Range的引数也支援表示式,即字元或者数值运算结果。例如:
Range(“F”&3+2) ——表示引用F5单元格
Range(“F”&Range(“D5”).Value)

Range(“D”&WorksheetFunction.min([a:a])& “:G5”)
还可以使用变数作为引数,这在回圈语句中极为有用。例如:
Range(“D”&i) ——表示列标为D,行号为变数i的值的单元格引用
3、引用多区域
如果作引数是使用多个区域地址,且用半形逗号分隔,那么Range也可以引用多个区域。
例如以下引用方式:
Range(“D3,F7”) ——表示D3和F7两个区域,包括2个单元格
Range(“D3:F4,G10”) ——表示D3:F4和G10两个区域,包括7个单元格
Range(“A1,B3:F4,Z1:ZB2”) ——表示A1、B3:F4和Z1:ZB2三个区域,包括1317个单元格
此方式引用单元格有一个限制,引数的长度不能超过256个字元,否则将会产生执行时错误。
4、引用整行、整列
利用“行号:行号”作为引数时产生对整行的引用,同理利用“列标:列标”作为引数时可产生对整列的引用,如果两个行号或者列标不一致时,可以引用多行或者多列。
以下是一些合法的引用:
Range(“2:2”) ——表示引用第二行
Range(“2:10”) ——表示引用第二到第十行
Range(“D:d”) ——表示引用第D列,列标不区分大小写
Range(“D:Z”) ——表示引用从D列开始到Z列结束的区域
Range(“D:A”) ——表示引用从A列到D列,顺序不一致时,VBA会自动转换成升序格式
引数中的冒号可以用半形也可以用全形冒号,VBA会将其全形冒号转成半形冒号。但是引用却只能使用半形,否则将产生编译错误。
整行、整行引用物件除了Range方法外,还可以用Rows和Columns来完成。其中Rows引用行,以阿拉伯数字作为引数;Columns引用列,既可用阿拉伯数字做引数,也可用列标做引数。
Rows(2) ——表示引用第二行
Rows(“2”) ——同样表示引用第二行
Rows(“2:2”) ——仍然表示引用第二行
Rows(“2:4”) ——表示引用第二到第四行
Columns(2) ——表示引用第二列,相当于Range(“B:B”)
Columns(“B”) ——同样表示引用第二列
Columns(“B:B”) ——仍然表示引用第二列
Columns(“B:D”) ——表示引用B到D列
如果不带引数,那Rows代表整个工作表所有行。而Columns代表整个工作表所有列。
5、Range巢状使用
除上面的四中方法外,Range还支援利用单元格作为引数,其具体语法为:
Range(Cell1,Cell2)
其中Cell1和Cell2是必选引数。Cell1用于指定目标区域的左上角单元格,Cell2用于指定目标区域右下角单元格。如果使用一个或者三个单元格将产生编译错误。
例如以下引用方式全是合法的区域引用:
Range(Range(“A1”),Range(“D2”) ——表示引用A1:D2区域,包含8个单元格
Range(Range(“A4”),Range(“A100”) ——表示引用A4:A100区域,包含97个单元格
当然也有一些特殊的应用,当引数并非单个单元格,而是区域是,取两个区域所跨越的最大范围。例如:
Range(Range(“A1:A3”),Range(“D2”)) ——表示引用A1:D3区域,而非A1:D2。VBA会从两个区域最左上角的单元格作为新的区域的参照起点,再取两个区域所跨越的最大行作为新的区域的行数,取两个区域跨越的最大列作为新区域的列数。
Range(Range(“B2:A3”),Range(“A3:D10”)) ——表示引用A2:D10区域。
要理解这个演算法,可以分别将B2:A3和A3:D10两段字元配对,然后从前两个字元中取最小值,再从后两对字元中取最大值,再加上冒号组合成一个新的区域地址。例如“B2:A3”和“A3:D10”,先从第一对字元B和A中取出最小值A,然后从第二对字元2和3中取出最小值2,再从第三对字元A和D中取出最大值D,最后从3和10中取最大值10,将这四个字元与冒号串联起来即为“A2:D10”。
excel中单元格的引用方式有哪几种
一般常用的两种
=A1这种 然后又分为,混合引用,绝对引用,相对引用,都是与$结合使用
还有一种RC模式,偏移量引用
其实是一样
excel2007中在对单元格的引用时有哪些引用方式,它们有何差别
相对引用和绝对引用。