请问excel公式中的双短横线“--”是什么意思?

例如lookup(9E+307,--right($B2,row(indirect("1,:"len$B2)))))
2025年03月18日 04:34
有3个网友回答
网友(1):

两个负号,相当于0-原数据的相反数,即等于原数。
或者理解为-1乘以原数的相反数,负负得正,仍为原数。
--可以把文本形式的数字 参与计算变为数值类型的数字!
可以用1* 等等替代
=LOOKUP(9E+307,--RIGHT($A1,ROW(INDIRECT("1:"&LEN($A1)))))
相当于=LOOKUP(9E+307,0-(-RIGHT($A1,ROW(INDIRECT("1:"&LEN($A1))))))
或者=LOOKUP(9E+307,(-1)*(-RIGHT($A1,ROW(INDIRECT("1:"&LEN($A1))))))
或者=LOOKUP(9E+307,RIGHT($A1,ROW(INDIRECT("1:"&LEN($A1))))*1)

网友(2):

这个公式中,right($B2,row(indirect("1,:"len$B2)))))计算后会返回一串由TRUE和FALSE组成的数组,但是这些数组无法直接运算,前面加上--,就可以将这一串数组是TRUE的变成1,是FALSE的变成0,便于外面嵌套的lookup计算。类似的还有多种相似的方法,1*,-0,+0,/1都是可以的,道理一样。

网友(3):

负号,负负得正
把文本形式的数字 参与计算变为数值类型的数字!
可以用1* 等等替代