2016-11-01 26 views
0

私はさまざまな製品に関するコードを持つ2つの列を持っています。これは ' - 'で区切られた3つの部分からなるコードです。 3つの部分のそれぞれの長さは一定ではなく、英数字です。 Aに対するB及びその逆にコードの各々を比較し、そして以下のようにそれらすべてを分類し、画像中: 1正確に一致コード列内のテキストコードに基づく分類

必要は私は4つのcriteriasに応じてそれらを分類しなければならないことです 2.接頭辞または接尾辞の変更コード 3.全く新しいコード

しかし合併症があるように思われます。 2つの列のコードは必ずしもソートされておらず、他の列のどこにでも一致する可能性があります。テキストを検索して比較関数を実行する方法はありますか?私はこれが多くの合併症を開くことを知っている - 私の考えは、値をルックアップし、カテゴリを取得するパラメータを渡すことです..再度ありがとう! - user1087661 1時間前

こんにちは。配列とFind関数でチェックする数式はありますか?多くのサポートに感謝します。

Code Categorization

+0

それらのあまりに多くが存在しない場合は、最初の列の行列が側面と上部に第2の列の値をダウン値として、それらを整理し、それらを比較するために、ロゼッタの優れた機能、@を使用します。私は重複があるかどうか、そしてその場合には別個の値を比較したいだけであるかどうか、そこにどれくらいあるかという質問から分かりません。 –

答えて

0

これは単に部分的な答えである:、最初の部分についてexactelyマッチングコード

、あなたは、このようなあなたに列B内の項目に一致しているSUMIFS()ような単純な検索式を使用することができます私は式でこれをやってみたかった場合は他の二つの要件についてはA列

全体セットは、その後、私は9月に接頭辞、ベース、およびsufixを抽出するためにLEN()LEFT()RIGHT()数式を使用します列を作成する。グループAとグループBの両方でこれを行います。

一致するグループを見つけることは、その時点からかなりまっすぐになるはずです。

+0

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

3

split機能とselect caseを使用して問題を処理することができます。私はあなたがUDFを使用する方法を知っていると仮定します。

Function CompareCode(Text1, Text2, Optional Delim = "-") 
    Dim T1, T2, CC 
    T1 = Split(Text1, Delim) 
    T2 = Split(Text2, Delim) 
    CC = (T1(0) <> T2(0)) * 100 + (T1(1) <> T2(1)) * 10 + (T1(2) <> T2(2)) * 1 
    CC = Format(-CC, "000") 
    Select Case CC 
     Case "000": CompareCode = "Same code" 
     Case "100": CompareCode = "Prefix changed" 
     Case "010": CompareCode = "Base changed" 
     Case "110": CompareCode = "Prefix and base changed" 
     Case "001": CompareCode = "Suffix changed" 
     Case "101": CompareCode = "Prefix and suffix changed" 
     Case "011": CompareCode = "Base and suffix changed" 
     Case "111": CompareCode = "Totally new code" 
     Case Else: 
    End Select 
End Function 
+0

素晴らしい。ありがとうございました!! – user1087661

+0

大きな反響をお寄せいただきありがとうございます。しかし、合併症があるようです。 2つの列のコードは必ずしもソートされておらず、他の列のどこにでも一致する可能性があります。テキストを検索して比較関数を実行する方法はありますか?私はこれが多くの合併症を開くことを知っている - 私の考えは、値をルックアップし、カテゴリを取得するパラメータを渡すことです..再度ありがとう! – user1087661

+0

@ user1087661私は混乱しています...コードルックアップやコード比較をしようとしていますか?あなたはすぐに両方を行うことはできません... – Rosetta

関連する問題