【Excel】文字が表示されたセルを抽出する方法

このQ&Aのポイント
  • Excelの関数を使用して、特定の条件下で文字が表示されているセルを抽出する方法について教えてください。
  • 具体的には、A1からC6までのセルには条件に応じて「りんご」「プリン」「紅茶」「バナナ」などが表示されており、D列には表示されている文字を抽出したいとのことです。
  • 空白セルを除き、D列に表示されている文字を抽出するための式や方法について教えてください。
回答を見る
  • ベストアンサー

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

エクセルの関数を教えて下さい。    A     B     C     D   1 りんご              りんご 2       プリン        プリン 3             紅茶   紅茶 4 バナナ              バナナ 5      6             緑茶   緑茶 上記のような表があります。(A~は列、1~は行番号です) A1~C6までは、IF関数で、条件にあった場合に“りんご”などを表示、そうでない場合には空白と なるような式が入っています。 そして、D列のように、それぞれの行に表示されている文字を抽出、何も表示されていない場合は空白としたいのです。 D列にはどういった式を入れればよいかを教えて下さい。 ※各行に表示されるのは1つのセルのみで、例えばA1のセルとC1のセルに文字が表示される ことはありません。A1に文字が表示されている場合は、必ずB1・C1のセルは空白です。 宜しくお願い致します。

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

  • ベストアンサー
  • chonami
  • ベストアンサー率43% (448/1036)
回答No.4

=A1&B1&C1 では?

tsukico
質問者

お礼

chonami様 なんと!こんなシンプルな式でできるとは! 目からウロコでした。 大変助かりました。 ありがとうございました!

その他の回答 (3)

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

No.1・2です! 何度もごめんなさい。 おそらくCOUNTBLANK関数が使用できると思いますので、 もっと簡単に =IF(COUNTBLANK(A1:C1)=3,"",INDEX(A1:C1,,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1)))) という数式にしてください。 親の仇のように顔を出して失礼しました。m(_ _)m

tsukico
質問者

お礼

tom04様 色々とご教示頂きありがとうございました。 こちらの式を使用しても、やはりエラー値が出てしまいました・・ 原因は今一つよくわかりません。 今回の事で、初めて見る関数をたくさん教えて頂いたので、 今後何かに活用できるよう自分なりに勉強します!

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.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

tsukico
質問者

補足

tom04様、早速のご回答ありがとうございます!! ご教示頂いた式を入れてみたのですが、どの式もエラー値がでてしまいます。(#REF!) 各セルの式を何度か確認し、どこも間違っていませんでした。 これにはどういった原因が考えられるでしょうか。 今回の表以外にも、同シートに色々と関数が使用されており、 今後データが増えることを見越して10000行まで式を入れてます。 当初は65336行までだったり、1048576行まで入っている列もあったのですが(!) それは全て10000行に統一しました。  ↑ こういった作業が関わっていたりしますか? お手数をおかけしますが、よろしくお願いします。

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

こんにちは! 一例です。 D1セルに =IF(COUNTA(A1:C1),INDEX(A1:C1,SUMPRODUCT((A1:C1<>"")*COLUMN(A1:C1))),"") という数式を入れオートフィルで下へコピーしてみてください。 ご質問の条件(各行にはデータは1セルのみの入力)であれば 上記で大丈夫だと思います。m(_ _)m

関連するQ&A

  • Excel ●がついているセルのみ抽出したい

    A列  B列  C列 ●  りんご  3    みかん  5 ●  ぶどう  2    バナナ  5 ↓ ●  りんご  3 ●  ぶどう  2 上記のように●がついているセルの横(B、C列)を抽出する関数はありますか? オートフィルタ以外でおわかりになりましたら教えてください。 よろしくお願いいたします<(_ _)>

  • Excelでの文字列とりだしについて

    Excel(version2013)について質問です。 ある文字列を検索範囲内で検索し、みつかった場合、 その文字列を返すようにしたいです、どのような関数を使えば宜しいでしょうか。 例えば下記A列に検索したいリスト(りんご、ばなな、ぶどう)があり、 検索したい範囲がD1~E5とします。 その場合、B列に関数を使った式を入れ、 りんご、ばなな、空文字、りんご、ぶどうと並ぶようにしたいです。 どのような関数を使えば宜しいでしょうか。       A         B      C      D        E 1  りんご   (式)        りんご  みかん 2  ばなな  (式)        ばなな すいか 3  ぶどう   (式)        すいか みかん 4              (式)        りんご  すいか      5              (式)        ぶどう  みかん                                      

  • 一番初めに文字列が入っている列の文字列を知りたい

    次の条件で、よりA列に近い文字列を引っ張り出すにはどのような関数を使えば良いのでしょうか? 1)行の中にそれぞれ"文字列"が入っている 2)文字列が入っているセル数は行によって異なる   【A】 【B】 【C】 【D】 【E】 【1】りんご 【2】   ばなな 【3】   みかん りんご 【4】ばなな           みかん この回答を【F】列に示す場合、 【F1】はりんご、【F2】はばな、【F3】はみかん、【F4】はばなな、になって欲しいのです。 上手く質問できないのですが、とても困っています。宜しくお願いします。

  • エクセルで一致するをセルを参照して入力したい

    お世話になります。 わかりにくいタイトルで申し訳ないのですが以下の場合について教えてください。 A列に1,2,3,4,5・・・というように重複しない数字が入っています。 C列にも1,3,4・・・など重複しない数字が入っています。(1と3の間に空白セルはない) D列には任意の文字が入っています。 C列の数字と同じ数字は必ずA列には存在します。(逆にA列の数字がすべてC列にあるわけではない) ここであいているB列にその左のA列と同じ数字をC列から探し、その右側のD列の文字を入力したいのです。 (A列と同じ数字がC列にない場合は空白にする。) 例 A1:1 C列で「1」が入っているセルがC1、D1:みかん の場合 B1:みかん とする A2:2 C列に2がない場合 B2:空白 A3:3 C列で「3」が入っているセルがC2、D2:りんご の場合 B3:りんご とする この場合B列にはどのような計算式を入れておけばよいのでしょうか。 よろしくお願いします。 Excel2002です。

  • エクセル 複数列からの抽出

    表題の質問をさせていただきます。 以下の表があります。 りんご --- --- --- --- りんご --- --- みかん --- バナナ --- --- --- --- バナナ バナナ --- みかん --- りんご・みかん等はVLOOKUPで表示されており、「---」部も、ここでの質問上 便宜的に「---」としていますが 実際にはVLOOKUP関数が入っていてエクセル上では 見た目は空白になっています。 さて、質問なのですが、上記表から文字が入っている部分のみを抜き出して以下のようにしたいのです。 抜き出し先は同一シート内でも別シートでもかまいません。 りんご りんご バナナ バナナ みかん     みかん バナナ 実際の表は30列・80行前後でして、現在は各列毎にオートフィルタの空白以外のセルで選択してコピペを列数分だけ繰り返しています。 関数やVBAで効率よく選択することが出来ますでしょうか。 エクセル2003です。よろしくお願いいたします。

  • 空白セルで区切られた文字列の種類を求める関数

    以下の条件を満たす excel関数がありましたら 教えてください。    A       B 1 りんご 2 みかん 3 りんご 4 なし 5 なし      3 ← 結果 6 7 なし 8 りんご 9 りんご     2 ← 結果 10 上記のようにA1からA10のセルに 文字列と空白が入っているとき、 空白で区切られたグループ内で、 文字列の種類が一体何種類になるのかを、 数えたいと思います。 ちなみに、関数はB列に入力したいのですが、 空白の一つ上のセルにだけ結果がでるように 表示させたいです。 説明不足でしたら申し訳ありません。 よろしくお願いいたします。

  • セルの内容を合わせるエクセル関数

    お世話になります。 エクセルの関数にて、下記条件を満たす関数が作れないので 分かる方がいましたら教えてください。 A列には文字列が、B列には空白か1の数字がランダムに(1番上の行は必ず空白セル)入力されています。 これに対して、B列に空白から1が続いているセルまでをひとくくりとして、 右側のセルに表示させたいです。 画像では C2セル=A2 C3セル=IF(B3=1,C2&A3,A3)としてC4セル以降にコピペ D2セル=IF(B2="",C2,"")としてD3セル以降にコピペしていますが、 C列でひとくくりになるセルが下へ行ってしまい、 希望する結果に表示されないです。 関数が組める方がいましたらご伝授頂けますでしょうか。

  • Excelのセルない文字抽出について

    やりたいこと画像見て頂いてわかるかどうか不安ですがやりたいことを箇所書きします ・ I5セル内の表示されている内容(文字列)をC2~I2セルに表示されている通りに入力したい 補足説明=I5セル内には関数で次のようになっています =CELL("contents",C5)&CELL("contents",D5)&CELL("contents",E5)&CELL("contents",F5)&CELL("contents",G5)&CELL("contents",H5) なのでI5セルを普通に抽出して次ページに書き出すと関数そのものが入力されてしまいエラー(文字列ではないもの)になってしまう I5セル内の表示されている通り(関数ではなくて見ている見えてる文字列のこと)の内容を次ページのC4セルに直接的書き込みしたいとゆうことと、C2~I2に書き込みしたいとゆうことです。 図書館や他サイトでも独学で努力して調べたり試したりしていますが上手くいかなかったので応用力の知恵のある皆様方へ質問させて頂きました。 この内容でもまだ何がしたいのか伝わらない場合はご連絡ください。 やり方わかる方はやり方を教えて頂きたく平にお願い申し上げます。

  • エクセルで文字の識別と文字を飛ばして足し算したい。

    以下のような表を作り、(1)、(2)の機能をつけたいのですがうまくいきません。 計算式の分かる方がいれば教えてください。    A    B   C   D 1 リンゴ  90円 1個  90円 2 バナナ 20円 2個  40円 3 みかん 30円 3個  90円 4 バナナ 20円 1個  20円 5 みかん 30円 2個  60円 6  合計  -  9個 300円 (1)この表のAの列に「リンゴ」「みかん」「バナナ」を入力すると自動的にB列に価格が表示される。 (2)C列に「未定」などの文字を入れるとオートSUMが機能しなくなるので、これをC列に文字を入れると文字を入れたセルを飛ばして計算する。 よろしくお願いします。

  • エクセルのセル内の重複文字列処理について

    よろしくお願いいたします。 セル内にスペースで区切られた文字列(単語)があり、文字列の数は不確定です。 その文字列の中で重複する文字列があり、それらを1つにまとめたいという要望です。 セルの行数は約6000ほどあります。 例 A1セル:リンゴ リンゴ みかん B1セル:リンゴ みかん A2セル:みかん バナナ みかん バナナ みかん B2セル:みかん バナナ ・・・ よろしくお願いいたします。 Windows7 HomePremium Office2010

専門家に質問してみよう