2017-05-19 25 views
-1

特定のデータベースにさまざまな条件付き書式設定を実装しようとしています。ここで答えを探しましたが、類似のものは見つかりませんでした。可能ではないかもしれませんが、試してみる価値があります。
私は、さまざまなデータのクレンジングと検証を行っています。ここで
がケースである:(小さなサンプル、この特定のファイルに100kのデータエントリでの作業)複数のセルと値に基づくExcelの条件付き書式設定

enter image description here

最終的に私が欲しいものを「最後の後に、低レベルの説明の文字を比較します式ですより高いレベル(強調表示されている)の最後の "UNDERSCORE"の後の文字に "UNDERSCORE"を割り当てる。一致しない場合は、セルを強調表示しますか?

あまりにも多くを求める、はい、いいえ、多分?私は、さまざまなデータのクリーニングと検証をどのように行うことができるかについて、他の提案をしています。

ありがとうございました!

+2

「低レベル」と「高レベル」とは何ですか? – NetMage

+0

@NetMage上位レベルが強調表示されます。 – bg777a

+0

@pnutsデータ入力エラー。 MTRでなければならないのですが、それらの違いは私が探しているものです – bg777a

答えて

2

最後の "UNDERSCORE"文字を使用する必要があり、4文字の接尾辞に依存できない場合、数式はかなり複雑になります。わかりやすくするために、上位レベルは常に下位レベルの最後の5文字が欠落していると仮定しました。最後の「DASH」文字を使用する必要がある場合は、これはもっと長くなります。

2列であることを2名のレベルを定義する、細胞を強調するために、この式を使用して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ご回答ありがとうございます!ただし、私のデータに対して何らの書式設定を実行していません。高レベルは常に最後の5文字が欠けているので、それは問題ではありません。しかし、説明の中の "UNDERSCORE"の後の最後の文字の数は変わるので、その場合は、アンダースコアを探して比較を高レベルにする必要があります。 – bg777a

関連する問題