2017-02-01 68 views
0

MID関数またはRIGHT関数をSubstitute関数と組み合わせて、別のセルの値で条件付きにすることは可能ですか?はmidとsubstituteを組み合わせます

私は2番目の列を持っています。8番目の文字から始まり、色に対応する3文字があり、その後にサイズの3文字があります(これは正しい機能を使用します)

A1がこのxxxxxx-BLK30Cのように見え、B1が色を表しているとしたら、MID(この例では8,3 BLK)を抽出します。 B1がSizeと答えたら、私は右から3を取り出したいと思う。それは私が実際の単語の3文字コードを代用したい色だ場合

はその後、例えば「BLK」は「黒」になり、「BLU」は「BLUE」となり

おかげ

+0

'= IF(B1 =" Color "、LEFT(RIGHT(A1,6)、3)、RIGHT(A1,3))'必要に応じて色とサイズを返します。 'vlookup()'やBLKからBlackに色を変えるのと同じようなものです。 (B1 = "Color"、VLOOKUP(LEFT(RIGHT(A1,6)、3)、G13:H14,2、FALSE)、RIGHT(A1,3)) ' ' G13 :H14'には検索配列 –

+0

があります。Iveのやり方で唯一の問題は、Iveがサイズの最後の3文字、特に色の最後の6文字を検索したことだけです。もう少し一般化するために 'Find()'を使う必要があります –

答えて

1

簡単な答え:あなたは本当に色を綴るする場合Substitute

=IF(B$1="color",MID($A2,8,3),IF(B$1="size",RIGHT($A2,3),"")) 

...ここにあなたを助けにはなりませんが、あなたは完全なスペルを検索するためにどこかに少しテーブルが必要になります。簡単な方法は、このセル範囲とそれcolors作るために次のようになります。

BLKを|ブラック

BLU |ブルー

そして、この式を使用します。

=IF(C$1="color",VLOOKUP(MID($A2,8,3),colors,2),IF(C$1="size",RIGHT($A2,3),"")) 

それともあなたはそれ(colorsという名前の)テーブルにし、より明確に定義された方法で同じ効果を得ることができますが...

=IF(D$1="color",INDEX(colors[Description],MATCH(MID($A2,8,3),colors[Code],0)),IF(D$1="size",RIGHT($A2,3),"")) 
+0

おかげさまで私はこれらを試してみましょう! – Ssnake83

関連する問題