• ベストアンサー

エクセルで検索機能を作成したい。教えて下さい。

例えば、俳句を数句セルに入力し、それを単語で検索する。ような場合、”countif”でやってみましたが、どうもうまくいきません。 よろしくお願い致します。

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

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

COUNTIF関数を使ってその単語が含まれる句をチェックするのでしたらA2セルから下方に句が入力されているとしてB1セルには検索の用語として例えば朝日と入力したのちにB2セルには次の式を入力して下方にドラッグコピーします。 =IF(COUNTIF(A2,"*"&B$1&"*")>0,MAX(B$1:B1)+1,"") B1セルで指定した検索のための文字が含まれていれば1が表示されます。 朝日と霧の両方の文字が含まれている句の場合にはC1セルに霧と入力したのちにB2セルには次の式を入力して下方にドラッグコピーします。 =IF(COUNTIF(A2,"*"&B$1&"*")+COUNTIF(A2,"*"&C$1&"*")>1,MAX(B$1:B1)+1,"") 朝日の文字か霧の文字のいずれかを含む場合でしたらB2セルに次の式を入力して下方にドラッグコピーします。 =IF(COUNTIF(A2,"*"&B$1&"*")+COUNTIF(A2,"*"&C$1&"*")>0,MAX(B$1:B1)+1,"") B列の数値を利用して1以上の数値のある句を元のシートがシート1であるとして例えばシート2に表示させるのでしたらシート2の例えばA2セルには次の式を入力して下方にドラッグコピーします。 =IF(ROW(A1)>MAX(Sheet1!B:B),"",INDEX(Sheet1!A:A,MATCH(ROW(A1),Sheet1!B:B,0)))

cheemasa
質問者

お礼

丁寧に回答頂き感謝しています。早速いろいろやっているところです。 これを参考に勉強します。本当にありがとうございました。 当面フィルター機能でユーザ設定(を含む)でやります。 これからも宜しくお願いします。花粉・インフル気をつけて下さい。

その他の回答 (2)

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

例えばA列のA1セルには俳句の文字が有り、A2セルから下方に俳句が入力されているとします。 その中で朝日という単語が含まれていたらそれをリストアップするのでしたらA1セルを選択してから「ホーム」タブの「並べ替えとフィルター」から「フィルター」を選びます。 A1セルには▼印が付きますのでそれをクリックして「テキストフィルター」で「指定の値を含む」を選択します。 表示される画面で上の窓に「朝日」と入力してOKすればよいでしょう。「朝日」と「霧」の両方を含む句を選びたいときは上の窓に「朝日」、ANDを選んでから下の窓に「霧」を入力してOKします。 該当する区だけが抽出されて表示されますので必要ならそれらをコピーして別のシートに貼り付ければよいでしょう。

cheemasa
質問者

お礼

早速試してみました。エクセルは賢いですね。 有難うございました。

回答No.1

  countifは数える関数で検索する事は出来ません。 検索はCtl+Fで出来ます。  

cheemasa
質問者

お礼

有難うございます。 数句ある範囲から、検索語に該当する語が入っている句を出力(列記)出来るようにしたいのですが……。

関連するQ&A