こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル 文字が表示されたセルを抽出したい

エクセルの関数を教えて下さい。

   A     B     C     D  
1 りんご              りんご
2       プリン        プリン
3             紅茶   紅茶
4 バナナ              バナナ
5     
6             緑茶   緑茶

上記のような表があります。(A~は列、1~は行番号です)
A1~C6までは、IF関数で、条件にあった場合に“りんご”などを表示、そうでない場合には空白と
なるような式が入っています。

そして、D列のように、それぞれの行に表示されている文字を抽出、何も表示されていない場合は空白としたいのです。
D列にはどういった式を入れればよいかを教えて下さい。

※各行に表示されるのは1つのセルのみで、例えばA1のセルとC1のセルに文字が表示される
ことはありません。A1に文字が表示されている場合は、必ずB1・C1のセルは空白です。

宜しくお願い致します。

投稿日時 - 2013-09-17 10:17:53

QNo.8267888

すぐに回答ほしいです

質問者が選んだベストアンサー

=A1&B1&C1

では?

投稿日時 - 2013-09-17 11:11:58

お礼

chonami様
なんと!こんなシンプルな式でできるとは!
目からウロコでした。

大変助かりました。
ありがとうございました!

投稿日時 - 2013-09-17 11:26:49

ANo.4

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.3

No.1・2です!
何度もごめんなさい。

おそらくCOUNTBLANK関数が使用できると思いますので、
もっと簡単に

=IF(COUNTBLANK(A1:C1)=3,"",INDEX(A1:C1,,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))))

という数式にしてください。

親の仇のように顔を出して失礼しました。m(_ _)m

投稿日時 - 2013-09-17 11:04:39

お礼

tom04様
色々とご教示頂きありがとうございました。
こちらの式を使用しても、やはりエラー値が出てしまいました・・

原因は今一つよくわかりません。

今回の事で、初めて見る関数をたくさん教えて頂いたので、
今後何かに活用できるよう自分なりに勉強します!

投稿日時 - 2013-09-17 11:30:37

ANo.2

No.1です!
たびたびごめんなさい。

>A1~C6までは、IF関数で、・・・
を見逃していました。

オーソドックスに
=IF(AND(A1="",B1="",C1=""),"",INDEX(A1:C1,,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))))
という数式にするか

別案として
=IF(SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))>0,INDEX(A1:C1,,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))),"")

という数式にしてみてください。
どうも失礼しました。m(_ _)m

投稿日時 - 2013-09-17 10:46:38

補足

tom04様、早速のご回答ありがとうございます!!
ご教示頂いた式を入れてみたのですが、どの式もエラー値がでてしまいます。(#REF!)
各セルの式を何度か確認し、どこも間違っていませんでした。

これにはどういった原因が考えられるでしょうか。

今回の表以外にも、同シートに色々と関数が使用されており、
今後データが増えることを見越して10000行まで式を入れてます。
当初は65336行までだったり、1048576行まで入っている列もあったのですが(!)
それは全て10000行に統一しました。
 ↑
こういった作業が関わっていたりしますか?

お手数をおかけしますが、よろしくお願いします。

投稿日時 - 2013-09-17 11:17:48

ANo.1

こんにちは!
一例です。

D1セルに
=IF(COUNTA(A1:C1),INDEX(A1:C1,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))),"")
という数式を入れオートフィルで下へコピーしてみてください。

ご質問の条件(各行にはデータは1セルのみの入力)であれば
上記で大丈夫だと思います。m(_ _)m

投稿日時 - 2013-09-17 10:30:18

あなたにオススメの質問