- ベストアンサー
EXEL 複数の文字列の中から特定の文字の数をカウントする方法
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。maruru01です。 既存のワークシート関数での方法の別解です。 =SUMPRODUCT(LEN($A$1:$A$100)-LEN(SUBSTITUTE($A$1:$A$100,"a",))) ちなみに、大文字と小文字は区別されます。
その他の回答 (4)
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
#1です。 ちょっと、補足すると、 配列数式にしなくても、 セル範囲でカウントできます。
- imogasi
- ベストアンサー率27% (4737/17068)
#1さんのユーザー関数を利用させて頂いて (ツールーマクロ-VBE画面になります、そこでメニューの挿入-標準モジュールで出て来る画面にコピペします。)そしてデータ以外の結果を出したいセルに =SUM(countchar("a",A1:A4))といれ、SHIFTキーを押しつつCTRLキーを押し、ENTERキーを押す。配列数式となり、先頭・後尾に{と}がつきます。 (データ例) adfasd cvdas ssddd asadfa a sdaasf (結果)9 {=SUM(countchar("s",A1:A7))}なら7です。 普通の関数では文字を探すのはFind(SEARCH)しかなく、 それも1文字列の中の重複出現をカウントしにくいので ユーザー関数を作るわけです。
ワークシート関数で、カウントする方法です。 A列(仮にA2:A101セルとします)の文字列の最大の長さが15文字だとして、 =SUMPRODUCT((MID($A2:$A101,{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},1)="a")*1) 上記関数では、大文字小文字を区別しません。区別する必要がある場合は =SUMPRODUCT((EXACT(MID($A2:$A8,{1,2,3,4,5,6,7,8,9,10,11,12,13,14,15},1),"A"))*1) "a"などは、もちろんセル参照も可能です。 {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15}の部分は、最大文字長まで一つずつ指定する必要があります。
- BLUEPIXY
- ベストアンサー率50% (3003/5914)
複数のセル範囲から、特定の文字をカウントする関数を作ってみました。 Public Function countChar(c As String, r As Range) Dim x, str, strLen, i, count count = 0 For Each x In r str = x.Value strLen = Len(str) For i = 1 To strLen If c = Mid(str, i, 1) Then count = count + 1 Next Next countChar = count End Function 使い方 A1:A100のセル範囲で、"A"が含まれる文字数を数える =countChar("A",A1:A100) 大文字小文字を区別しない場合は、 c=UCase(c) str=Ucase(str) してください
関連するQ&A
- COUNTIFで特定の文字列を含む値のカウント方法
Excel2010を使っている者です。 COUNTIF関数で特定の文字列を含むセルの数をカウントしたいのですが、結果がゼロになってしまいます。 具体的には A列の1行目から900行目までに以下のように番号が振ってあって、その中で1994を含むセルの数を数えようと思っています。 計算式として「=COUNTIF($A$1:$A$900,"1994")」と入力したのですが、戻り値が0になってしまいます。 なお、A列は数値にしても文字列にしても結果は変わらず、「=COUNTIF($A$1:$A$900,"1994*")」とワイルドカードを使った検索にしても同じく0になってしまいます。 1994000001 1994000002 1994000005 ~ 2009111112 2009111117 もう一つ関連した質問をさせていただきますが、そもそもこの関数で特定の文字列を含む検索をかけたいときは、ワイルドカードの*を使わないとうまく計算できないものなのですか? よろしくお願いいたします。
- ベストアンサー
- オフィス系ソフト
- 文字列のなかの特定の文字の数
エクセルの関数式を使って、ある文字列のなかに、特定の文字の数を取得する方法を教えて下さい。 つまり、セルA1に「山口県山口市山田町」という文字列が入力されているとき、「山」という文字が何個あるかを取得したいのです。
- ベストアンサー
- その他([技術者向] コンピューター)
- 同一列内の複数条件 カウント
EXCEL2003でA列のA1:A10の中にA・B・C・D・E・F・Gの7文字が入力されています。 この中からCとD以外の文字の個数を数えたいのですがよい方法はないでしょうか? 検索しても複数列のカウントは見つかるのですが、同一列の中での複数条件のカウントは 見つからず・・・ どなたかご教示お願いします。
- ベストアンサー
- その他MS Office製品
- Excel2007の文字数カウント(半角0.5)
Excel(エクセル)2007で、 ある1列のすべてのセル内の文字を「半角文字⇒0.5文字」、「全角文字⇒1文字」とカウントした場合の文字数表示をしたいのですが、方法がわかりません。 ----------------------------- たとえば、↓のように表示されるようにしたいです。 【A列 (文字)】 A1:いぬ A2:犬 A3:イヌ A4:dog ↓↓↓ 【B列 (文字数)】 B1:2 B2:1 B3:1 B4:1.5 ※「A3:イヌ」の"イヌ"は全角カタカナではなく半角カタカナなので、1(0.5×2)文字となります。 【補足】 ※極力、マクロとVBAを使わない方法を知りたいです。 ※マクロやVBAを使わなければ上記の条件を満たすカウントと文字数表示ができない場合、その方法やVBAソースが知りたいです。できれば、コマンドボタンを押すと文字数を表示する仕様にしたいです。 ※上記の【A列 (文字)】 の文字はあくまで例です。実際は、どんな文字や数字にも対応できる応用の利く仕様にしたいです。 ※上記の【A列 (文字)】が4行というのもあくまで例です。実際には、何行にでも対応できる仕様にしたいです(具体的には、時間はかかると思いますが10000行くらいまで対応できるのが理想です)。 ここまでの条件を満たす「文字数カウント」の方法、 もし分かる方がいましたらどうかよろしくおねがいします。
- ベストアンサー
- その他MS Office製品
- 複数行を特定の列の各セルの中にある特定の文字列でソートする
複数行を特定の列の各セルの中にある特定の文字列でソートしてその特定の文字のみが含まれる行のみ取り出す方法って簡単にできますか? たとえばA1からF100までのセルでC列のセルに特定の文字列が含まれる場合その行を集めて残りはそのしたの行に置き換えるとか。 特定の文字列はセルの文字列の中のどの部分にあるかは任意とします。よろしくおねがいします。 イージス
- ベストアンサー
- オフィス系ソフト
- 文字数をカウントしたい
今までWord2003を使っていたのですが、Word2007にしてからやり方がわからなくなってしまったので教えていただきたいです。1000字を目標に入力した文字数を、今は何字書いたか一目で分かるようにしたいのですが、このようなときに文字数のカウント機能とかは付いていますか? 大学でレポート提出があるのですが、わからずに困っています。よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- 文字列の特定の文字を抜き出す方法
とある集計をエクセル2013でしたいと思っています。 文字列がT4~T53まで入力をされております。 文字列の書式は、 01○○○プランA 01【自社】○○○プランA この2種類が混在をして入力されております。 ※最初の01は01~50までランダムで変わります。 ※最後のAもA~Mまでランダムで変わります。 ※【自社】というのは、入っているものと入っていないものがあります。 U4~U53まで件数が入力をされております。 やりたい事 (1) ○○○プランの○○○に特定の文字(ここでは基本とします)が入っている数を算出 (2) ○○○プランの○○○に特定の文字(基本)と、○○○の前に【自社】が両方入っている数を算出
- ベストアンサー
- Excel(エクセル)
- 日付条件を満たしたときの文字列カウントについて困ってます。
初級レベルかもしれませんが、教えてください。 今、A列に数年分の日付(2009/4/10など※重複日付アリ)が入力されており、 B列に全部で複数種類(10種類程度)ある文字列がランダムに入力されています。 (1つのセルに複数種類の文字列が入力されている場合もアリ) 【イメージ】 A B 2009/4/6 ○○○ 2009/4/7 △△△ ■■■ ××× 2009/4/7 △△△ □□□ 2009/4/7 ○○○ ××× 2009/4/8 ●●● 2009/4/9 △△△ ▲▲▲ □□□ ■■■ 2009/4/9 ▲▲▲ 2009/4/9 □□□ ・ ・ ・ ・ ・ ・ このとき、1週間毎の日付で区切り(2009/4/6~2009/4/12など)、 指定した文字列の数をカウントしたく思っております。 【結果イメージ】 A B C D E ・・・ ○○○ ●●● △△△ ▲▲▲ ・・・ 2009/4/6~2009/4/12 10 5 12 3 ・・・ 2009/4/13~2009/4/19 0 3 5 7 ・・・ 2009/4/20~2009/4/26 4 14 3 8 ・・・ エクセル2000を使用しておりますので、それに対応したいい方法を ご存知でしたら教えていただきたいです。
- ベストアンサー
- オフィス系ソフト
- 文字列の中の特定の数個の文字列だけを特定のポイント数に指定する
長い1行の文字列の中の特定の数個の文字列だけを特定のポイント数に指定するにはどうしたらよいでしょうか。 例えば、「9月というのに35度もあります。」という10ポイントの1行の文字列の中の「35」だけを15ポイントにするにはどうしたらよいでしょうか。「35」だけを<p></p>や<div></div>の中に入れてみましたが、こうするとここで改行されて3行になってしまいます。 よろしくお願いします。
- ベストアンサー
- HTML
- Excelで文字列の中から特定の文字の出現回数を数える
いつもお世話になっています。 また皆さんのお知恵を拝借させて下さい。 Excelで、複数のセルに入力されている文字列の中から特定の文字だけ の個数を数えるにはどのような方法があるでしょうか。 例: A1セル あ A2セル あいう A3セル あう A4セル いう ※セル毎の文字数は一定ではありません。 上記のような場合で、「あ」は3個、「い」は2個、「う」は3個というように 特定の文字の出現回数を数えたいのです。できればVBAやマクロではなく、関数がいいのですが・・・ よろしくお願いします。
- ベストアンサー
- オフィス系ソフト