excel中N与T函数的作用

经常看见indirect()与T(),N()同时出现在数组公式中,不太确定他们的作用,请高手给我解释一下!多谢

N()通常用于数组公式,但T()好像比较少。

N()函数用于将非数值转换为数值,和VALUE函数不太一样。
比如=VALUE("5")=5,而=N("5")=0。

N()的用法非常复杂,如果真有人研究起来,可能要写一个小册子了。

我经常用到的有以下情形,供参考:
一、对逻辑值的转换
=SUMPRODUCT(N(LEFT(A2:A10,2)="中国"))
***统计A2:A10区域以“中国”开头的单元格的个数
在SUMPRODUCT的连乘用法中,逻辑值自动转换为数值,但像这样单列的逻辑数组,需要用N转换为数值,再进行SUMPRODUCT的运算。
二、OFFSET取得的非连续数值区域
=SUMPRODUCT(N(OFFSET($A$1,ROW(1:10)*3-2,)))
***OFFSET取得1,4,7……等不连续行,如果直接累计,会得到#VALUE错误。
INDIRECT的情形类似。

其他情形一下子想不起来。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-03-15
N 函数

返回转化为数值后的值。

语法

N(value)

Value 为要转化的值。函数 N 可以转化下表列出的值:

数值或引用 N 返回值
数字 该数字
日期(Microsoft Excel 的一种内部日期格式) 该日期的序列号
TRUE 1
FALSE 0
错误值,例如 #DIV/0! 错误值
其他值 0

注解

一般情况下不必在公式中使用函数 N,因为 Excel 将根据需要自动对值进行转换。提供此函数是为了与其他电子表格程序兼容。
Excel 可将日期存储为可用于计算的序列号。默认情况下,1900 年 1 月 1 日的序列号是 1,而 2008 年 1 月 1 日的序列号是 39448,这是因为它距 1900 年 1 月 1 日有 39448 天。Excel for the Macintosh 使用另外一个默认日期系统。

T 函数

返回值引用的文本。

语法

T(value)

Value 是要进行检验的值。

注解

如果值是文本或引用了文本,T 将返回值。如果值未引用文本,T 将返回空文本 ("")。
通常不需在公式中使用函数 T,因为 Microsoft Excel 可以自动按需要转换数值的类型,该函数用于与其他电子表格程序兼容。
第2个回答  2011-03-15
INDIRECT和OFFSET函数的参数为数组时,产生多维引用返回多个区域,需要使用N函数(或T函数)来返回每一个区域左上角单元格的值,并执行转换功能(N函数将逻辑值TRUE转为1、FAlse和文本转为0、数值返回本身;T函数将数值和逻辑值转为""、文本返回本身)。

关于函数产生多维引用,具体可以参考:http://hi.baidu.com/gouweicao78/blog/item/7e959dfc40b96d51d7887d48.html?timeStamp=1300171368200
第3个回答  2011-03-15
我说一下自己的理解吧,
N()就是非数字格式数据全变为0,数值格式照常显示。
T()就是非文本格式数据全变为""(空文本),文本格式照常显示。
相似回答