Excelで複数セルから文字列の検索、表示する方法

このQ&Aのポイント
  • Excel初心者の方にわかりやすく、複数のセルから文字列を検索して表示する方法について解説します。
  • 関数やVBAに詳しくない方でも、簡単に実施できる方法です。
  • 具体的な手順や注意点も解説しますので、ぜひ参考にしてみてください。
回答を見る
  • ベストアンサー

Excel 複数セルから文字列の検索、表示

エクセル初心者です。 過去のものを探しては見ましたが、うまくキーワードを見つけられなかったので 質問させてください。 リストで次のようなものがあるとします。  A   B  C  D  E  F  G 1○ 12 45 - 98 - 2■ - - 12 - 06 3◇ 35 12 01 99 - 4× - - - - 12 5☆ 08 61 20 12 - このリストで各行ごとにB~F列のセルにある「1」で始まる文字列を検索して 該当する文字列をG列に表示する方法はありますでしょうか? 関数とかVBAについては???なので、わかり易くお教え頂けると助かります。 よろしくお願いいたします。

  • inopi
  • お礼率25% (2/8)

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.4

一例です。 複数ある場合は最左端セルの文字列になります。 G1に=IF(COUNTIF(B1:F1,"1*"),HLOOKUP("1*",B1:F1,1,FALSE),"")、下方向にコピー

inopi
質問者

お礼

ありがとうございました。 おかげさまでうまく出来ました!

その他の回答 (3)

  • morchin
  • ベストアンサー率16% (212/1281)
回答No.3

G2のセルに以下の式を入れる =IF(ISERROR(FIND("1",B2))=TRUE,IF(ISERROR(FIND("1",C2))=TRUE,IF(ISERROR(FIND("1",D2))=TRUE,IF(ISERROR(FIND("1",E2))=TRUE,IF(ISERROR(FIND("1",F2))=TRUE,"",F2),E2),D2),C2),B2) G3のセルには、式の2の所を3にした式を入れる。後は、その繰り返し。

  • wisemac21
  • ベストアンサー率39% (171/429)
回答No.2

G2=INDEX($B$1:$F$1,SEARCH("1*",B$1:F$1,1)*(COLUMN(B1:F1)-1)) と入力して、Ctrl+Shift+Enter で確定する 式を下へコピー

  • neKo_deux
  • ベストアンサー率44% (5541/12319)
回答No.1

一番左の文字を抽出するのなら、LEFT関数を利用とか。 (元のデータが文字列なのか?数値を表示形式付きで表示しているのか?で結果が変わりますが。) G1=IF(LEFT(B1)="1",B1,"") とすると、B1が1で始まる場合にはB1の値、そうでなければ空白になります。 B~Fまでって事ですから、5つを&演算子で連結して、 G1=IF(LEFT(B1)="1",B1,"")&IF(LEFT(C1)="1",C1,"")&IF(LEFT(D1)="1",D1,"")&IF(LEFT(E1)="1",E1,"")&IF(LEFT(F1)="1",F1,"") とか。 データが文字列で、1で始まる物は重複しないとかって前提ですが。

関連するQ&A

  • 文字列が同じ場合、セルに色を塗りたい

    エクセル VBAでリストにある文字列と他のセルの文字列が末尾まで完全に同一の場合、 セルに色を塗るにはどのようなコードを記入すればよろしいでしょうか? 具体的には下記のような動きができればと考えております。 G列にリストがあります。(G列のリストの数は変動します) このリストの文字列とB2:B7とE2:E7の範囲の文字列が末尾まで完全に同一の場合、 B2:B7とE2:E7のセルに黄色で色を塗る。 また、リストにはあるけど、B2:B7とE2:E7のセルにない文字列がある場合、 リストのその文字列があるセルに緑で色を塗る。 上記のような動きをするには、エクセル VBA でどのようなコードを記入すればよろしいでしょうか? エクセルは2010及び2007を使用しております。 よろしくお願いします。

  • 関数で、最大値のあるセルの列を表示したい

    エクセルの関数について教えてください。 セルH1に関数を使って、列A、列C、列E、列Gの最大値を出しました。 その下のH2のセルに、関数を使って、列A、列C、列E、列Fの最大値のある列(A,B,C,Dのいずれか)を表記させたいのですが(下記のように)、可能でしょうか?   A B C D E F G H 1 10 ※ 28 ※ 66 ※ 26 99 2 56 ※ 29 ※ 89 ※ 28 A 3 99 ※ 12 ※ 66 ※ 10 (列Hが上記のようになるようにしたいのです。)

  • エクセルの文字列の検索に関して

    また、エクセルに関しての質問です。 例えば  A B C D 1あ 1 2い 2 3う 3 4え 4 5お 5 6か 6 7き 7 8く 8 このような漢字で文字列が縦に入力されていて、  A B C D E 1あ 1   お 5 2い 2   う 3 3う 3 4え 4 5お 5 6か 6 7き 7 8く 8 このようにD列にある文字に対してA列にある文字で該当する文字を発見し横のBセルにある番号を取ってくるということがしたいです。 この場合だとD1は「お」なので、A列の上から見ていくとA5に「お」があるので、B5の数字「5」をEに入力といったような具合です。簡単なように見えますが、複数の文字列を横断的に検索することができません。 誰か詳しいお方お教え願います。

  • Excelで文字列を独自の二進数で表したい。

    A,B,C,D,Eのいずれかを含む文字が順不同でセルに入っているものから、 A=10000 B=1000 C=100 D=10 E=1 と置換して足した、二進数であらわしたり、逆にその二進数から文字列に戻したりしたいです。 (例:DAなら10010、EBCなら1101) VBAの自作関数を含めてExcelの関数でできる方法があればお教えくださると助かります。

  • 複数セルから文字列を検索して・・・

    どう検索していいのかわからなかったので質問します。 複数のセルから特定の文字列を検索して、該当したセルに対応するB列の数字の合計を関数によって出したいです。 例えば画像を例にすると、A列で"()"という文字列が入っているセルがいくつかあります。 これらのセルに対応するB列の数字の合計を出したいです。 "()"は必ず文字列の末尾にくることとします。 回答よろしくお願いします。

  • エクセル 複数列を検索し左3列目を返す

    よろしくお願いします。 シート1の5列(E,J,O,T,Y)の中から,該当するセルを検索,該当セルの左隣3列目のセルを返す関数を考えています。検索条件の重複はありません。 検索結果を表示するシートをシート1とは別に作成します。 A列に検索条件を入力し,B列に結果を返したいです。 例シート1   A  B   C   D   E    F  G   H    I     J   ・・・・・   ID 品名 項目 単価 1年目 ID2 2品名 2項目 3単価 2年目 ・・・・・ 1 1  a   b   c    1-1   e    f    g   h   1-11 2 2  i    j   k     2-2  m    n    o   p   2-22  検索結果   A   B 1 1-1  a 2 2-22  n このような感じのファイルになっています。IFやLOOKUPなどを試しましたが,複数列をうまく検索する関数を作成することができませんでした。 また,検索対象となるシートが複数になる可能性もあり,その際にも対応できるとありがたいです。 よろしくお願いいたします。

  • エクセルで計算の結果がある数値の場合のみ文字列を表示させたいです・・・。

    エクセルで計算の結果がある数値の場合のみ文字列を表示させたいのですが、IF関数を使うのかなと思いますが関数がよく解かりません。。。 やりたいことはこんな感じです。 セルG1にはA1-B1、H1にはC1-D1、I1にはE1-F1と計算式が入っています。 計算の結果、▲1になるセルだけを文字列『売上』と表示させたいのですが・・・。 なお、計算の結果は、必ず『1』か『▲1』のどちらかにしかなりません。 つたない質問ですが解決したく困っています。よろしくお願いします。

  • エクセルで空白セルを寄せたい

    エクセル2002使用です VBAは使わずに関数だけで空白セルがあるセルを詰めて表示したいのですが・・・   A|B|C|D|E|F|G 1 あ い う え お か き 2 ○   ○ ○   ○ の表を   A|B|C|D|E|F|G 1 あ う え か  2 ○ ○ ○ ○ のように表を書き換えたいのです。 1行目には必ず文字が入力されています。 2行目には入力されているセルと空白セルが不定期に入力されています。 2行目のセルが空白ならば、1行目のセルも削除して左へ詰めて 表を転記したいのです。 よろしくお願いします。

  • ExcelVBAでセルに入力されている種類と文字列を表示したいのですが

    ExcelVBAでセルに入力されている種類と文字列を表示したいのですが… Excelで、例えば下のように文字が入力されているとき、 A1:あああ B1:あああ C1:いいい D1:あああ E1:ううう F1:いいい このときにセルに入力されている種類(数)とその文字(この場合だと、3種類:『あああ』、『いいい』、『ううう』)をメッセージボックスで表示させたいのですが、VBAで作るのは可能でしょうか?

  • エクセルで複数の列から複数の文字列(数字)を選びたいです。

    エクセルで複数の列から複数の文字列(数字)を選びたいです。 A   B   C   D   E   F   G   H 1   12   1   4   5   8   6 2   36  7   2   5   6 3   55  3   4   88  1  3  8 5   87 上記のような表があったとき、C列からG列のいずれかに1、3、8のどれかが 含まれるとき、H列にB列の数字を入れたいのですが、どのようにすれば できるのでしょうか? この場合、A列の1,3,4段にそれぞれ12、55、88と入れたいということです。 よろしくおねがいいたします。

専門家に質問してみよう