我想用excel做的事情有点不正统,但我需要一种方法来清理人们导入TechExcel的DevTrack的数据。如果您尝试导入的内容与项目中已有的内容不完全准确,则DevTrack会为字段创建值,从而导致格式略有不同的重复值。
我得到的是一个"验证器" excel表;人们复制/粘贴他们想要导入的内容,并突出显示与数据验证表不匹配的任何内容。
数据验证本身不起作用,因为复制/粘贴会覆盖它,手动输入数据是浪费时间。
我已设法使用此公式部分地使用条件格式:
=ISERROR(MATCH(C5,D:D,0))
但它不区分大小写。我需要区分大小写。
所以我设法创建另一个公式,如果没有匹配则显示为true,但是确切地要求它是一个数组公式,它似乎不适用于条件格式。
因此,如果使用ctrl + shift + enter输入单元格,则此方法有效,但不能作为条件规则使用。
{=ISERROR(MATCH(TRUE,EXACT(C5,D:D),0))}
以下是我正在考试的简化版本。当没有大小写匹配时,该公式为真,但我无法使用ctrl + shift + enter在条件格式中输入它。如果这是我想要的,那么小写"甜瓜"会突出红色。
有没有办法让这个工作,或者有替代方法来做到这一点?
如果重要,我会在办公室365中使用最新版本的excel。
答案 0 :(得分:0)
使用在没有CSE的情况下生成阵列处理的函数。例如SUMPRODUCT或AGGREGATE(等等)。
'to show TRUE for case-sensitive matches
=SIGN(AGGREGATE(15, 6, ROW($D$5:$D$9999)/EXACT($C5, $D$5:$D999), 1))
'to show TRUE on no case-sensitive match
=ISERROR(AGGREGATE(15, 6, ROW($D$5:$D$9999)/EXACT($C5, $D$5:$D999), 1))
SIGN包装器是不必要的,但对我来说,这是一个视觉提示,我正在寻找一个布尔值。
你不能在CFR中使用像D5这样的动态范围:INDEX(D:D,MATCH(" zzz",D:D))而你不想要使用AGGREGATE(或SUMPRODUCT)中的完整列引用因此我选择了$ D $ 5:$ 9999美元。