N(MID($D$18,ROW($1:$9999),3)="字"))前面的N什么意思,有什么用?
- 教育综合
- 2023-03-01 07:56:53
EXCEL ,A1单元格内容abc123,A2中输入=MID(A1,ROW($1:$9),1),结果为a。请问ROW($1:$9)什么意思
这是一个数组公式,象这样应用是错误的。 ROW($1:$9)是取得1-9行的行号,也就是得到1-9的一组数字。把这个作为MID的参数,就依次截取A1的1-9位。 由于原始数据只有6位,那么溢出的部分就得到空文本。 这样,整个公式得到的是一个文本组成的数组。 选择整个公式,按F9试算,就会看到公式结果。 {"a";"b";"c";"2";"3";"";"";"";""} 这个公式通常不会这样用。 比如 A1=123 公式 =SUMPRODUCT(--MID(A1,ROW(1:3),1)) 得到6,意思是将123的各个数位相加。请问excel大神这个公式什么意思? =VLOOKUP(,MID(B23,ROW($1:$99),11)*{0,1},2,)
这个公式我帮你翻译一下。
1. 他是一个数组函数,函数写完要ctrl+shift+enter 三键一起按。
按完如图在函数前后出现 { }
* 你问我数组函数是什么?请百度百科。
2. 这个函数把参数省略了些,我写全了,你再看看。
=VLOOKUP(0,MID(B23,ROW($1:$99),11)*{0,1},2,0)
VLOOKUP的第一个参数,省略一个0,第四个参数省略一个0
3. 把这段函数拆分一下,看看怎么组成的。
一个 VLOOKUP,一个 MID, 一个 ROW
三个函数都不难,很简单。
4. VLOOKUP是最外层的函数,主要看看他的四个参数。
第一个参数,找啥? 找0。( 函数里省略掉了)
第二个参数,在哪找?MID(B23,ROW($1:$99),11)*{0,1}
这部分是这个函数的重点,第二个参数肯定是一个数组,(几列,或者单元格区域)
MID(B23,ROW($1:$99),11) 返回的是 B23那段字符,1~11,2~12,3~13.................
------------------------------------------------------------------------------------
*{0,1}
*0 目的是让MID那段字符变成错误或者0
*1 目的是让MID那段字符变成错误或者数字本身。
【文本乘以数字 = 错误】
光靠文字可能不理解,上图。
G列那部分就是MID(B23,ROW($1:$99),11)
【ROW($1:$99)是因为不知道有多长随便写个足够长的99而已,
没有其他含义,当然也可以使用LEN函数,但没必要,高兴的话些9999也行。】
H,和I列就是 G列分别乘以0,1之后的结果。
整个MID(B23,ROW($1:$99),11)*{0,1} 这段函数,最终返回的就是
H列和I列。
说到这,题主可能就明白了,这个函数用辅助列的话。
可以改成=VLOOKUP(0,H:I,2,0)
第三个参数,找到之后返回第几列? 2 【没啥好说的】
第四个参数,精确查找,0【没啥好说的】
5. 通过以上的步骤,完成了VLOOKUP, 这里 用数组函数,替换了一个单元格区域。
不用辅助列,体现了高逼格。
希望能够帮到你
=MID(A2,LOOKUP(1,0/(CODE(MID(A2,ROW($1:$99),1))>999),ROW($1:$99))+1,99) 求解什么意思
从里往外扒:
①、MID(A2,ROW($1:$99),1),获取A2中数据的每个字符;
②、CODE(①)>999,计算①中每个字符的code码是否大于999,一般我们认为code码小于999的为字母和符号;
③LOOKUP(1,0/②,ROW($1:$99))+1,返回A2字符串中第一个不是汉字的字符位置,这是lookup的二分法运用,二分法规则复杂,需要单独了解,但是能后记住固定用法也可以;
④MID(A2,③,99),就是文本截取函数了,和=right(a2,len(a2)-③+1)效果差不多,但后者更准确。
excel 用到的公示请解释这个函数
MID(A2,ROW($1:$30),1):将A2中内容一个一个字符取出来,一共取ROW(1:30) 30次,超过A2的字符长度的返回空值。 (MID(A2,ROW($1:$30),1)>"吖")比较A2中每个字符与“吖”的大小,大于返回真值,否则返回假值。“吖”在汉字的排序中是最小一的一个字。 0/(MID(A2,ROW($1:$30),1)>"吖",0/(刚刚返回真假值,真値在计算过程中相当于1,假值相当于0),反回一串类似这样0;0;0;#DIV/0!;0的值。 LOOKUP(2,0/(MID(A2,ROW($1:$30),1)>"吖"),ROW($2:$31)),找到最后一个0的值,并excel =MATCH(,0/ISNUMBER(--MID(G13,ROW($1:$99),1)),)
=MATCH(,0/ISNUMBER(--MID(G13,ROW($1:$99),1)),) 这是一个数组公式,要加按SHIFT+CTRL+ENTER三键才能正确运算 ISNUMBER(--MID(G13,ROW($1:$99),1) ) 将G13单元格从第一个字符起到第99个字符,分别取一个字符,这样就形成一个数组,再用两个负号运算使数据由文本数字转成常规数字,如果不是数字的则返回成错误值,再用ISNUMBER函数检查是否是数值,是数值的返回真值TRUE,否则返回假值FALSE 比如G13单元格的内容是 "我消费100元" 则得出 {FALSE,FALSE,FALSE,TRUE,TRUE,T上一篇
1+1可以等于多少?有个?
下一篇
返回列表