Follow

:doge21: im such a genius EXCEL使用自吹自擂的故事 

Excel 上需要xlookup 一个值然后返回另一个值,但是这个值有的地方是ABC_DE,有的写法是ABC,然后lookup_array 的写法也同样可能是ABC和ABC_DE之一。我需要它不论哪种写法,都能识别出来。

问题本身其实还挺好解决的,在lookup_value 和lookup_array 里都套一个left(cecll, 3) 就好了,这样就只会把各个的前三个字母对比了,不论是ABC_DE还是ABC都能对应上。

但问题是,将这个写进公式中的时候,lookup_array 会变成left(ENTIRE_COLUMN,3),也就是会需要对整列的每个格子都执行一次left(). 像我这样有好几百行的数据来说,执行就会特别的慢。而且每次下拉,需要显示下面的行的时候都会卡。

聪明机智的我注意到了xlookup() 的search_option 里有一个2——通配符搜索,可以用 ? *等通配符搜索。所以我只需要将lookup_value 设为 left(VALUE, 3)&"*", 然后再把search_option 设为2 就好了——这样就是用ABC* 执行通配符搜索,省掉了【每行都要执行几百个left() 】这样一个恐怖的操作,整体耗时就可以忽略不计了。

· · Web · 1 · 6 · 13

为什么我要在mastodon 上写呢,因为这个点实在是太小了 :aru_8111: 找不到人可以吹了

Sign in to participate in the conversation
The Senate

Welcome, to the Galactic Republic.