请教一个Excel函数的用法
如果将公式改成=$A1,也就是在列标前面加上一个$符号,这就表示列绝对引用,行相对引用。这时下拉单元格时行号会变动变成=$A2,但是横着拉列号不会变动,仍然是=$A1。
类似,如果把公式改成=A$1,则表明行是绝对引用,怎么拉都不会变,而列是相对引用,随着公式在行方向上的变化而变化。
如果公式变成=$A$1则行列均锁定,就是所谓的“行列均绝对引用”,怎么拉公式都不会变化,都是引用A1单元格。
INDIRECT
全部显示
全部隐藏
返回由文本字符串指定的引用。此函数立即对引用进行计算,并显示其内容。当需要更改公式中单元格的引用,而不更改公式本身,请使用函数 INDIRECT。
语法
INDIRECT(ref_text,a1)
Ref_text 为对单元格的引用,此单元格可以包含
A1-样式的引用、R1C1-样式的引用、定义为引用的名称或对文本字符串单元格的引用。如果 ref_text 不是合法的单元格的引用,函数 INDIRECT
返回错误值 #REF!。
如果 ref_text 是对另一个工作簿的引用(外部引用),则那个工作簿必须被打开。如果源工作簿没有打开,函数 INDIRECT 返回错误值
#REF!。如果 ref_text 引用的单元格区域超出行限制 1,048,576 或列限制 16,384 (XFD),则 INDIRECT 返回 #REF!
错误。注释 此行为不同于 Microsoft Office Excel 2007 之前的 Excel
版本,早期的版本会忽略超出的限制并返回一个值。如果 a1 为 TRUE 或省略,ref_text 被解释为 A1-样式的引用。
如果 a1 为 FALSE,ref_text 被解释为 R1C1-样式的引用。
创建一个空白工作簿或工作表。
选择“帮助”主题中的示例。
注释 不要选择行或列标题。
从“帮助”中选择示例
按 Ctrl+C。
在工作表中,选择单元格 A1,然后按 Ctrl+V。
要在查看结果和查看返回结果的公式之间进行切换,请按 Ctrl+`(重音符),或在“公式”选项卡上的“公式审核”组中,单击“显示公式”按钮。
A1 为一逻辑值,指明包含在单元格 ref_text 中的引用的类型。
示例
如果将示例复制到一个空白工作表中,可能会更容易理解该示例。
如何复制示例
12345 AB数据数据B21.333B345George10562公式说明(结果)=INDIRECT($A$2)单元格 A2 中的引用值 (1.333)=INDIRECT($A$3)单元格 A3 中的引用值 (45)=INDIRECT($A$4)如果单元格 B4 有定义名“George”,则返回定义名的值
(10)=INDIRECT("B"&$A$5)单元格 A5 中的引用值
(62)
在创建引用某单元格的公式时,如果出现以下情况,对该单元格的引用将被更新:(1) 通过使用“剪切”命令删除该单元格来移动它,或者 (2)
由于插入或删除行或列使该单元格发生了移动。如果需要无论该单元格上方的行是否被删除或单元格是否移动,始终需要公式引用相同的单元格,请使用 INDIRECT
工作表函数。例如,如果需要始终引用单元格 A10,请使用下面的语法:
=INDIRECT("A10")
xl 不会在插入行时移动的引用 什么函数将返回由文本指定的引用? 单元格引用 四处移动单元格时地址不改变 在不更改公式本身的情况下更改公式中对某一单元格的引用
能和我讲讲"'"和"'!"的意思/功能吗?
引工作表名规定格式
=Sheet3!D11 表示引用工作表Sheet3的D11单元格,如果字母开始表名不用'。
='123ABC'!C15 表示引用工作表123ABC的C15单元格,这时要数字开始或字符开始的要加''引用表。
!前面是表名,后面是单元格地址。
这个 公式 说来话长, 那就长话短说
indirect 是一个 指针, 意思是 你原来的东西 是放在 某个 房间里的 例如 3栋104号房 的A1 格, 现在这个 钥匙被 放在一个 抽屉里了, 你得先 拿到钥匙 知道是哪个房间 再去开这个房间
公式 就是 假设原来 数据放在单元格里的 , 写公式 就是 正常的 引用
='3栋104'!A1
你看 它有 单引号,有感叹号 ,为啥呢, 其实 引用工作表名 本来都是要加上单引号的,有的时候没有 是因为 工作表名 开头不是数字 且没有空格很好辨认,反正加上引号是肯定不会错的,不加单引号 可能引用出错
indirect 只是 再把这个地址 变成 变量 ,因为 我事先不知道 是哪个房间
建议你 公式求值 一步步看 自己就明白了, 就是选中 公式--公式求值 一步步看结果
INDIRECT函数,可以把文本(字符串)表示的引用转换为可以计算的引用,你这个INDIRECT函数使用时没有第二个参数,默认使用A1样式。
其中,双引号内都是文本值,例如"'" 实际上就是一个半角单引号,"!"引用的是一个感叹号。从你所引用的前半部分来看,就是感叹号之前的部分,组合起来表示一个工作表名称。
"'"&$C3&"'!" 这部分,假设你本表C3单元格里的实际内容是 sheet2 那么这部分便会生成
'sheet2'! 这样的一个文本,后边的D$2&$B3 是引用两个单元格里的数值,假设你的D2单元格里是 A 这个字母, B3单元格里是 3这个数字,则你这个括号内的内容会得到文本:
'sheet2'! A3
INDIRECT("'sheet2'! A3")
得出的结果就是同一个工作簿中名为sheet2的工作表中的A3单元格里里边的数值。
你所问的,在公式中,内容被一对双引号所引起来的部分,表明这部分是文本格式(字符串),&表示连字符,可以把文本连起来, 例如 ="我"&"爱"&"旅游" ,得出的结果是:我爱旅游。如果是=A1&B1 ,如果A1中是 我 B1中是 很好 那么得出的结果就是 我很好。
另外,$表示绝对引用,例如公式中所引用的$C3 ,是指当这个公式向下复制时,会相对引用行,例如你想下拖一行时会变成$C4,以此类推,但是向右拖动时,依然是$C3,也就是向上下左右复制或者填充公式时,引用的行会变,列不会变。 后边所引用的D$2则不同,这个是绝对引用行而相对引用列,如果公式向右填充一列,这部分会变成C$2, 而向下填充时则不变,依然是D$2. 当然,依上边的规律,$B3是绝对列相对行. 也就是$在列标前边时,绝对列,在行前边时,绝对行. 行列可以混合使用绝对引用,也可以行列同时绝对引用(也就是不管如何复制,一直引用某个单元格或者某个单元格区域).
好了, 这个公式解释完了,非常详细的解释.如果还看不懂,那还是你自己好好实践一下吧。多练习练习这个函数。
本人擅长EXCEL公式函数的综合运用,可以完成难度较大的各种逻辑运算。如果有什么不明白的,可以追问,也可以私信联系哦。
补充说明一下,这个函数里有个引用工作表名的格式,是感叹号之前用单引号引起来的部分表示工作表名。反过来说,就是单引号引起来一个字符串加一个感叹号,代表工作表名称的引用。感叹号后边跟的是在这个工作表中的区域。
=INDIRECT("'"&$C3&"'!"&D$2&$B3)
这个公式要结合图片才容易说清楚,这里是两个工作表的截图合并在一起。
如图所示,表1中的A1是你说的公式,另外三个单元格的内容是我手动输入的
"'"&$C3&"'!” 这个是说C3单元格的内容对应的是一个工作表的名称,C3里的内容是2,
因此就是去找工作表名称为“2”的这个工作表,下面有,
因为工作表名称是数字开头的,前后加单引号,!表示这是个工作表名称
& 是连接符,前后内容连接起来。
D$2&$B3 是D2和B3的内容连接起来,构成一个单元格的地址,
正常来说D2的内容是列号,就是A、B、C、D……
B3的内容是行号,就是1、2、3、4……
这里连接起来是A5。
总体连起来就是去找工作表名为2的工作表中找A5单元格的内容,结果是55。