2017-05-19 246 views
-1

我正在嘗試對特定數據庫實施各種條件格式。在這裏尋找答案,但找不到類似的東西。不可能,但值得一試。
我正在執行各種數據清理和驗證。
這裏的情況:(小樣本,在這個特殊的文件,100K數據輸入工作)基於多個單元格和值的Excel條件格式化

enter image description here

最後我要的是,將在最後的低級別說明文字比較公式「 UNDERSCORE「後面的字符(高亮顯示)。如果不匹配,則突出顯示該單元格?

問太多了,是的,不,也許?對於我如何執行各種數據清理和驗證,我願意接受任何其他建議!

謝謝!

+2

什麼是「低級」和「高級」? – NetMage

+0

@NetMage高亮顯示。 – bg777a

+0

@pnuts數據錄入錯誤。應該是港鐵,這些差異是我期待的 – bg777a

回答

2

如果您必須使用最後一個「UNDERSCORE」字符,並且不能依賴於四個字符的後綴,則公式將變得非常複雜。爲了簡單起見,我假設較高級別總是缺少較低級別的最後五個字符,如果您必須經過最後一個「DASH」字符,那麼這將會更長。

用這個公式來突出細胞,定義了兩個名字水平和DESCRS是兩列:

=IFNA(MID(B2,FIND("[]",SUBSTITUTE(B2,"_","[]",LEN(B2)-LEN(SUBSTITUTE(B2,"_",""))))+1,999)<>MID(INDEX(DESCRS,MATCH(LEFT(A2,LEN(A2)-5),LEVELS,0),1),FIND("[]",SUBSTITUTE(INDEX(DESCRS,MATCH(LEFT(A2,LEN(A2)-5),LEVELS,0),1),"_","[]",LEN(INDEX(DESCRS,MATCH(LEFT(A2,LEN(A2)-5),LEVELS,0),1))-LEN(SUBSTITUTE(INDEX(DESCRS,MATCH(LEFT(A2,LEN(A2)-5),LEVELS,0),1),"_",""))))+1,999),FALSE) 

這使用了一個非常好的技巧與SUBSTITUTE找到一個字符的最後一次出現。

順便說一句,我可能會寫一個Perl程序來解析數據和發現錯誤。

+0

替代技巧很整齊。什麼是「DESCRS」 – Ravi

+0

「LEVELS」和「DESCR」是您需要爲** Level **和** Descr ** iption列定義的名稱,以便公式可以在它們上進行搜索和匹配。或者你可以用絕對列引用替代它們(比如'$ A'和'$ B')。 – NetMage

+0

@NetMage謝謝你的回覆!但是,它沒有針對我的數據運行任何格式。更高級別總是缺少最後五個字符,所以這不是問題。描述中「UNDERSCORE」後面的最後一個字符數量會有所不同,因此在這種情況下,需要查找下劃線並將比較結果設置爲高級別。 – bg777a

相關問題