- ベストアンサー
エクセルで特定語句
エクセルで特定語句が入ってるセル数を関数を使って自動表示できますか?今は、検索から「特定語句」と入力し、検索してセル数を数えています。いい方法がありましたら、教えてください。よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
=COUNTIF(B3:B8,"*特定語句*") のようにしてはどうでしょうか? B3:B8 は数えたい範囲に変更してください。
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
>自動表示できますか (1)件数カウントだけやればよいのか。 自動表示というと、別の場所に抜き出して表示したいとも取れる。 関数の結果は普通は、「自動」で計算され、セルに結果が「表示」もされるので、自動表示なんてことを書かないから。 件数を出すだけであれば、COUNTIFで出来ることで、質問レベルの課題ではない。 (2)指定した語句を「含む」ならワイルドカードを使う。 「含む」でなくそのものを探すならそのように質問に断るべきです。 例 A2:A10 の「as」を問題にする例 asdas sd fgh asd dfg as ssasd dfg ssasggg セル数の場合は =SUM(IF(NOT(ISERROR(SEARCH("as",A2:A10))),1,0)) と入れて、SHIFT+CTRL+ENTER(3つのキー同時押し)配列数式 結果 5 COUNTIFでは =COUNTIF(A2:A10,"*as*") 結果 5 ーー 今回は「セル数を数えています」とあるので、はっきりしているが (3)出現回数を数えるなら VBAで標準モジュールに Sub test01() k = 0 For i = 2 To 10 s = 1 Do p = InStr(s, Cells(i, "A"), "as") 'MsgBox p If p <> 0 Then s = p + 1 k = k + 1 End If Loop While p <> 0 Next MsgBox k End Sub を実行して 結果 6 ーーー 抜き出し表示なら 例えばE列に =IF(NOT(ISERROR(SEARCH("as",A2))),MAX($E$1:E1)+1,"") と入れて下方向に式を複写。 この連番でSheet2に A2に =INDEX(Sheet1!$A$2:$A$10,MATCH(ROW()-1,Sheet1!$E$2:$E$10,0),1) と入れて下方向に複写。 結果A2:A6 asdas asd as ssasd ssasggg (imogasi方式)
お礼
お礼遅くなりました。うまくいきましたヽ(´ー`)ノ。 ありがとうございました。
- southern_wind
- ベストアンサー率34% (10/29)
アスタリスクは,ワイルドカード文字です。 つまり,「特定語句」の前後にどんな文字が付いていても カウントしなさいという意味になります。
お礼
早速教えてくださり、ありがとうございます。バッチリできました。ありがとうございました。