2016-05-31 14 views
0

私は数時間の答えを見つけるのに苦労しており、私はあきらめています。ここでは私がExcelでやっていることがあります。Excelでは、どのようにセル内の値を分割し、分割値ごとにvlookupの式を適用できますか?

各番号(1~4)について、コードと対応するスコアを割り当てています。 は、私は(A1 C4を介して)最初の行から開始し、このデータを入力しています

Number Code Score 
1  A  2 
2  B  4 
3  C  6 
4  D  8 

入力:今、一人一人が数週を取得し、私のデータは、この

Person  Week1     Week2 
Person1  3 (A10 is the cell)  4 (A11 is the cell) 

私の出力のようなものです:I vlookupを使用して毎週の値を見つけ、スコアを取得しています。

Person  Week1  Week2 
Person1 6   8  

だから、6を得るために、私は式を使用しています。これまでのところは良い

=VLOOKUP(A11,Complexity!A1:C4,3) 

=VLOOKUP(A10,Complexity!A1:C4,3) 

を8を取得するには、私が式を使用しています。私の問題は、ある週は2つの値を持つかもしれないということです。 例:

Person  Week1      
Person1  3,4 (A10 is the cell) 

私は出力スコアを期待しています:

私は、セル内の値を分割し、私は6 + 8の合計を得ることができるので、毎回のための式をVLOOKUP適用することができますどのように
Person  Week1  
Person1 14 

A11について

+0

最大で2つの値を持つのは、何週間ですか?値は常に同じ方法で分離されますか? (スペースなしの昏睡、またはスペースなしの昏睡) –

+0

週には、カンマ区切りの値をいくつでも指定できます。私の実際の生産データは、一般的にコンマ区切りで約10の値があります。 – user238021

+0

セル内の最大値が未定義であるため、昏睡区切り文字に基づいてセルを分割するVBAソリューションが必要です。わずか2〜4の数字では、式でそれを行うことができますが、その後は面倒です。 –

答えて

3

、そのセル内の任意のセパレータが、存在する場合、あなたの例のようにしかつのコンマ(スペースなし)であると仮定すると:

=SUMPRODUCT(0+(ISNUMBER(FIND(","&Complexity!A$1:A$4&",",","&A11&","))),Complexity!C$1:C$4)

コピーダウン、A12に等A13を、エントリの同様の結果を得た(ただし、Iは、行に対して上記絶対に複雑シートへの参照をした注)。

よろしくお願いします。

+0

これを正しく理解していれば、2つのコマの間の最初のテーブルの数値列から値を砂時計にして、曜日の入力でそれを見つけたら尋ねます。それは、まるでカードのように振る舞いますか?あなたが検索しているときにどのように評価されるかを理解しようとしている、4、週の値が4または3,4の場合、後続の昏睡はありませんか? –

+0

そして、私はアプローチを愛しています。私の頭を包み込むことを試みています。 –

+0

@ForwardEdこの場合は一般的にコンマは厳密には必要ないかもしれませんが、それらがなければ、例えば、例えば"2,3,14"を含む文字列の中の "4"は正の値を返しますが、これは望ましくない結果になる可能性があります。カンマで各検索文字列を囲むことで、これを防ぐことができます。もちろん、検索する文字列でも行う必要があります。そうでない場合は、 "3,4"内の "、3、"または "、4"の検索​​が失敗します。 「3,4」を使用すると、両方のケースで成功を保証します。 –

関連する問題