• 締切済み

エクセル 複数セルからの引用

エクセルでの質問です。 B1 / C1 / D1 / E1のセルいずれか1つのセルに入力がされます。 その入力された結果をA1セルに表記をさせたいのですが、Vlookをネストさせていけばよいのでしょうか。 間違えて複数のセルに入力がされた場合はエラー表示を返したいのですが、 ご教授いただけませんでしょうか。 よろしくお願いいたします。

みんなの回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.4

No.3です! たびたびごめんなさい。 前回の入力規則の数式に間違いがありました。 =COUNTA($B1:$E1)=1 に訂正してください。 絶対参照マークを忘れていました。 何度も失礼しました。m(_ _)m

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.3

こんばんは! ご希望の方法とは異なるかもしれませんが・・・ 一案です。 B1~E1セルに入力規則をかけ一つのセルだけ入力可能にし、複数セルに入力があればそのセルは入力できないようにする方法はどうでしょうか? その方法です、当方使用のExcel2003での場合は B1~E1セルを範囲指定 → メニュー → データ → 入力規則 → 「入力値の種類」欄で 「ユーザー定義」を選択 → 数式欄に =COUNTA(B1:E1)=1 としてOK! これでB1~E1セルに1セルのみ入力可能になり、二つ目のセルに入力・決定でエラーメッセージが出ます。 この設定を行った後に、A1セルに =IF(COUNTA(B1:E1)=0,"",INDEX(B1:E1,,SUMPRODUCT((B1:E1<>"")*COLUMN(A1:D1)))) としてみてはどうでしょうか? 以上、参考にならなかったら読み流してくださいね。m(_ _)m

  • kagakusuki
  • ベストアンサー率51% (2610/5101)
回答No.2

 COUNTA関数で判定を行った場合、もしB1~E1のセル何れかに関数が入力されていて、関数の結果が何も表示されない様になっている場合であっても、COUNTA関数は空欄ではないセルにカウントしてしまいますから、COUNTIF関数を応用した方が良いと思います。 =IF(COUNTIF(B1:E1,"*")+COUNT(B1:E1)=1,IF(COUNT(B1:E1),SUM(B1:E1),B1&C1&D1&E1),IF(COUNTIF(B1:E1,"*")+COUNT(B1:E1),"複数セルに入力有",""))

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.1

文字列が入力される場合でしたら次の式になります。 =IF(COUNTA(B1:E1)>1,"複数セルに入力有",IF(COUNTA(B1:E1)=1,INDEX(B1:E1,MATCH("",B1:E1,-1)),"")) 数値の場合でしたら次の式になります。 =IF(COUNT(B1:E1)>1,"複数セルに入力有",IF(COUNT(B1:E1)=1,INDEX(B1:E1,MATCH(10^10,B1:E1)),""))