EXCEL中函数=IF(B2="","","A"&TEXT(999+COUNTA(B$1:B2),"000000"))详细解释???越详细越好

如题所述

=IF(B2="","","A"&TEXT(999+COUNTA(B$1:B2),"000000"))
如果B2单元格是空数值,函数所在单元格返回值空数值,如果B2单元格不是空数值,则A连接TEXT函数的返回值,999+counta函数的返回值(counta是统计非空单元格的函数),“000000”是TEXT函数返回值格式化条件。假如counta统计到20个空单元格,那么TEXT的返回值就是000020,因为TEXT里的“000000”条件自动补全成6位数
IF函数:判断是否满足某个条件,如果满足返回一个值,如果不满足则返回另一个值。
TEXT函数:根据制订的数值格式将数字转成文本
COUNTA:计算区域中非空单元格的个数
另外,公式中的&符号为连接符,作用就是将两个字符串连接起来。例如:1&1=11,A&B=AB
$符号为是在公式中采用$表示对数据区域的绝对引用,也就是你下拉公式的时候$后边的数字是不会变的
不知道这样表达你能看明白不,如果看不懂的话欢迎追问。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-08-07
=IF(B2="","",判断,B2为空时,返回空,否则返回后面公式的运算结果
COUNTA(B$1:B2)计算B$1:B2区域为文本的单元格个数,B$1:B2当下拉时区域是变动的
TEXT设置(999+文本个数)这个值的格式为6位数,最后在前面加"A“
第2个回答  2013-08-07
999+COUNTA(B$1:B2) : 999+1=1000,999+2=1001
countA 用于统计非空数据的个数,但区域中如果有公式,这个统计函数貌似不顶用,你不如用我给你的答案试一下
第3个回答  2013-08-07
if
判断B2是否为空,如果是,输出空单元格

否则
1 计算B1到B2范围内,非空单元格有几个,然后加上999
2 按照00000的格式输出,前面加上A

备注
判断格B2和查询范围会根据所在单元格不同而发生变动。
第4个回答  2013-08-07
这个公式得到A000000格式的字符串:
1、IF函数条件,如果B2为空,结果为空;
2、COUNTA(B$1:B2)得到从B1到B2区域内,有数据的单元格的个数,前一单元格为行绝对引用,后一个单元格为相对引用,当公式下拉时,区域变为从B1开始到B列当前行的引用;
3、TEXT(999+COUNTA(B$1:B2),"000000"),2步得到的个数加上999得到的数,进行格式化,结果为6位,不足6位前面加0;
4、"A"&TEXT(999+COUNTA(B$1:B2),"000000"),3步得到的字符串前面加上A。本回答被提问者采纳