2017-10-09 19 views
0

値が他の列に存在する場合、これに基づいて列( "通信モード")を入力しようとしています。Excel - 複数の列からテキストを抽出する

これは、行と列の表示方法です。私が欲しいもの

+------+----------------+----------------+------------+----------------+ 
| Mode | In Person  | Email   | IM   | Phone   | 
+------+----------------+----------------+------------+----------------+ 
|  | In person < 5 |    |   |    | 
+------+----------------+----------------+------------+----------------+ 
|  |    | Email 10 - 15 |   |    | 
+------+----------------+----------------+------------+----------------+ 
|  |    |    | IM < 5 min |    | 
+------+----------------+----------------+------------+----------------+ 
|  |    |    |   | Phone 10 - 15 | 
+------+----------------+----------------+------------+----------------+ 
|  |    |    | IM < 5 min |    | 
+------+----------------+----------------+------------+----------------+ 

は「個人的に」、「電子メール」にエントリがある場合、それは数千行をスキャンし、に基づいて、通信欄のモードにテキストを挿入するために取得するために式を使用することです、 "IM"、または "Phone"を選択してから、理想的には期間を指定して別の列を作成します。

+-----------------------+-------------+-----------+-------+----+-------+ 
| Mode of Communication | Time Spent | In Person | Email | IM | Phone | 
+-----------------------+-------------+-----------+-------+----+-------+ 
| In Person    | < 5 min  |   |  | |  | 
+-----------------------+-------------+-----------+-------+----+-------+ 
| Email     | 10 - 15 min |   |  | |  | 
+-----------------------+-------------+-----------+-------+----+-------+ 
| IM     | < 5 min  |   |  | |  | 
+-----------------------+-------------+-----------+-------+----+-------+ 
| Phone     | < 5 min  |   |  | |  | 
+-----------------------+-------------+-----------+-------+----+-------+ 
| In Person    | 10 - 15 min |   |  | |  | 
+-----------------------+-------------+-----------+-------+----+-------+ 

私はVLOOKUPを使用しようとしています。すべての行と列が同じシート上にあります。列 'コミュニケーションのモード' でこれを入れて

答えて

2

:これらは、その列のAモードであると仮定し

=IF(C2<>"",SUBSTITUTE(C2,"In person ","")&" min",IF(D2<>"",SUBSTITUTE(D2,"Email ","")&" min",IF(E2<>"",SUBSTITUTE(E2,"IM ","")&" min",IF(F2<>"",SUBSTITUTE(F2,"Phone ","")&" min",""))))

=IF(C2<>"","In Person",IF(D2<>"","Email",IF(E2<>"","IM",IF(F2<>"","Phone",""))))

'プレイ時間' 列でこれを入れて列Bは時間を消費します。

1

列AとA2では

列Bの間に新しい空の列を挿入し、B2で

=IFERROR(INDEX(C$1:F$1, MATCH("zzz", C2:F2)), TEXT(,)) 

=IFERROR(TRIM(REPLACE(INDEX(C2:F2, MATCH("zzz", C2:F2)), 1, LEN(A2), TEXT(,))), TEXT(,)) 

ダウン記入してください。

1

私が見る解決策の1つは、すべての列を連結して解析することです。

たとえば、「通信モード」の列では、連結(inperson、email、im、phone)を使用してデータを解析できます。

使用通信塔のモードでは、この式:セルA2 = TRIM(SUBSTITUTE(CONCATENATE(C2、D2、E2、F2)、B2、 ""))

プレイ時間カラム:セルB2 = 「IM」、「」、「電話」、「電話」、「電話」、「電話」、「電話」、 ""))

関連する問題