- ベストアンサー
特定の文字列を含むセルの個数をカウントしたい
こんにちは。 現在、シフト表作りを任されているのですが、特定の文字列(個人名)を含むセルの個数をカウントして、表内のコマ数をカウントしたいと考えています。 表の名前は、セルの名前登録をしてありますので、ここでは仮に"表"とします。 特定個人の名前は、"名前"とします。 この条件下で、上記を行うにはどのようにすればよいでしょうか? ご助言お願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
no1です。 てっきり「表」という事で早合点していました、お詫びします。 安直ですが、検索範囲を適用範囲を含み連続セル範囲指定でお試し下さい。 =COUNTIF(連続セル範囲,"*"&名前セル&"*")
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
自分の慣れ親しんだ仕事のエクセルの表は、回答者にも判るという線で質問してますが、全くそんなことはないはずです。 具体的に表の実例を挙げて、的は自分で整理して、質問すべきです。 「表」という言葉は、エクセルの質問ではある程度回答者がイメージするものがあります。違う使い方をするなら注記すべきです。 1シート上に、諸所に表があるのでしょうか。 別シートにも同類の(カウントすべき表が)あるのでしょうか。 2箇所ぐらいなら =COUNTIF(A2:D5,"*植田*")+COUNTIF(A10:D15,"*植田*") のようにせざるを得ないと思います。 1つのCOUNTIF関数の中に、複数範囲を指定することはできないようです。 ーー >表の名前は、セルの名前登録をしてありますので、ここでは仮に"表"とします。特定個人の名前は、"名前"とします。 この意味が良くわかりません。 A2:D5とあわせてA10:D15を「範囲」と名づけてみましたが、 =COUNTIF(範囲,"*bb*")はエラーになり結果が出ませんでした。 他の関数では(=SUM(A2:D5,A10:D13)など)可能なものもありますが。
お礼
説明不足で申し訳ございません。 COUNTIF関数は、完全に連続しているセルでなければ機能しないのですね。 事情により、そのようにすることが難しい(おそらく、アクセス等を使えばもっとスマートに処理できるのでしょうけれども)ため、データが連続していない形式のシートになっております。そこで、処理に困っていました。 ご意見大変参考になりました。大変ありがとうございます。
- nanase_p_q
- ベストアンサー率60% (66/109)
条件にワイルドカードと参照を使用したい場合は "*"&A1&"*" のように指定してみて下さいネ。
お礼
ありがとうございます。 参考になりました。
- mu2011
- ベストアンサー率38% (1910/4994)
次の方法は如何でしょうか。 =COUNTIF(表,"*名前*")
お礼
すばやいご助言ありがとうございます。 早速試してみたのですが、COUNTIF関数は、どうやら連続した表でなければなければいけないのですね・・・。 私が想定している名前定義した表というのが、いわゆる"表"というよりも、飛び飛びのセルの集合の状態であるためか、うまく行きません。 また、文字列から特定の個人名(本来であれば、セルごとに分ければよかったのでしょうが、スペースの関係でそれが困難なのです・・・。)を抽出するとき、個人名そのものではなく、個人名を含んだセルに対して、ワイルドカードを使用したいのですが、セルに対してワイルドカードをしようすることはできないのでしょうか? (先ほどのご説明を借りると、*A1*というような遣い方ができればしたいのですが・・・)。 言葉足らずで申し訳ございません。 なんにせよ、一歩進むことができました。ありがとうございます。
お礼
いえいえ。こちらこそ言葉足らずで申し訳ない。 エクセルは、簡単な数処理を行う関数程度しか扱ったことが無かったので、このような単純な数値を扱うもの以外の関数では、いつもの自分の慣れた方法が使えないことや、条件指定の方法について、もう少し細かい説明が必要であることを忘れておりました。 だいたいにおいて、当初想像していた通りにできました。 重ねてお礼申し上げます。