2016-08-08 9 views
2

これまではこの形式のINDEX(MATCH())の式を使用しましたが、ワイルドカードは使用しませんでした。誰でも2つの理由として説明してA2&"*"を追加するとエラー値を返すことはありますか?私はデータをチェックして、間違いなく一致するはずです。ワイルドカードと複数の条件に一致するインデックス

式は以下の通りです:

{=INDEX(I1:M1000,MATCH(1,(M1:M1000=Sheet3!B1)*(I1:I1000=A2&"*"),0),2)} 
+0

データはどのようにレイアウトされていますか?私はインデックス/マッチを複数の基準で行っていますが、フォーマットは異なります(https://www.deskbright.com/excel/index-match-multiple-criteria/)。 – BruceWayne

答えて

4

はA2が "ABC" が含まれているとします。

マッチステートメントの検索文字列にワイルドカードを入れることができます。

MATCH(A2&"*",I1:I1000,0) 

あなたが検索している範囲ではなく、abcで始まるものを検索します。 A2 &とI1000を「*」ように、この文脈では、それは単に「* ABC」と、各セルのリテラルマッチを行います。また、ブラケット

(I1:I1000=A2&"*") 

ちょうど範囲I1内の各セルを比較している

*はワイルドカードとして機能しません。

あなたは部分一致を行うにはFINDまたはSEARCHを使用して、またはI1内の文字列の最初の数文字を取得するためにLEFTを使用して試みることができる:I1000

=INDEX(I1:M1000,MATCH(1,(M1:M1000=B1)*(FIND(A2,I1:I1000)=1),0),2) 

=INDEX(I1:M1000,MATCH(1,(M1:M1000=B1)*(LEFT(I1:I1000,LEN(A2))=A2),0),2) 

あなたが再場合にも、まだ、ワイルドカードを使用することができますIF文を使用して数式をキャストします。 -

=INDEX(I1:M1000,MATCH(A2&"*",IF(M1:M1000=B1,I1:I1000),0),2) 
+0

ああ、トム助けてくれてありがとう!私は最近、あなたができることや使えないときの相互互換性の問題をたくさん抱えているようです:/これについてのヒントをもう一度ありがとう:D:D:D:D – IIJHFII

+0

問題はありません。 IF文を使って再キャストしてもワイルドカードを使用することができたのは、後で私に起こりました。 –

+0

最初の数式からゼロを省略 - plz編集を参照してください。 –

関連する問題