INDEX返回零而不是空白值
我有大量的值,其中每个值可以是空的或有一个有效的值。 零点是有效的值,与空白单元不同!
在另一个工作表中,我使用VLOOKUP,INDEX,INDIRECT,OFFSET(或其他一些昂贵的操作),使用一些行列索引来指向数组和列表值。 如果数组中的所需值是空的,它应该返回-
(或NA
或类似的东西)。
问题是,当我使用这个公式:
=IF(ISBLANK(INDEX(array, row, col)),"-",INDEX(array, row, col))
一切正常,但有INDEX的双重呼叫。 这是浪费。 arrays相当大,这个function显然是我的瓶颈,完整的评估需要用户等待相当长的时间。
如果我尝试分两步做,例如:
A1 = INDEX(array, row, col)
和
B1 = IF(ISBLANK(A1), "-", A1)
它根本不起作用,因为在单元格A1中将空白值转换为0
。
那么有没有办法让它不需要双重调用INDEX函数呢?
有没有一种方法来使它没有双重调用INDEX函数?
是的,确保如果0
被返回,则有0
被提取,如果-
被返回a -
。 换句话说,解决源数据中的问题。
例如,通过select源数据范围,HOME>编辑 – 查找和select,转到特殊…,select空白,input-
, Ctrl + Enter 。
如果希望不显示-s,则select源数据范围,然后selectHOME> Cells – Format,Format Cells …,Custom:
0;0;0;
或调整(例如小数精度)以适应。
你有什么想法为什么微软决定隐式地将空值转换为零?
不,但对我来说,这个问题似乎脱离这个话题。