- ベストアンサー
エクセルで文字を数えるには・・・・
エクセルで文字(A,D,N,/)を数えるにはどうしたらよいのでしょうか? COUNTIF=(範囲、”文字”)を使ったのですが、うまくいきません・・・・・
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
>範囲のA1のところを、「A1:D2」に指定したのですが、#VALUE!のエラーが出てしまいました。範囲の中に様々な文字があるのがいけないのでしょうか? この場合は 範囲のA1を A1 & B1 & C1 & D1 & A2 & B2 & C2 & D2 に変えればいいですよ。
その他の回答 (5)
- 米沢 栄蔵(@YON56)
- ベストアンサー率36% (37/102)
=COUNTIF("A1:D2","A") の意味することは、「範囲A1:D2のセルの値がAであるセルの個数を数える」ということです。 セルA1の値の中のAという文字を数えるには、 =LEN("A1")-LEN(SUBSTITUTE(A1,"A","")) とします。 従って、範囲A1:D2のセルの値の中のAという文字を数える」には、 =LEN("A1")-LEN(SUBSTITUTE(A1,"A",""))+LEN("A2")-LEN(SUBSTITUTE(A2,"A",""))+ LEN("B1")-LEN(SUBSTITUTE(B1,"A",""))+LEN("B2")-LEN(SUBSTITUTE(B2,"A",""))+ LEN("C1")-LEN(SUBSTITUTE(C1,"A",""))+LEN("C2")-LEN(SUBSTITUTE(C2,"A",""))+ LEN("D1")-LEN(SUBSTITUTE(D1,"A",""))+LEN("D2")-LEN(SUBSTITUTE(D2,"A","")) とします。 関数式にて広い範囲のセルの値の中の特定の文字の数を数えるには、 記述が長くなります。 また、特定の文字の種類が多い場合はもっと長くなります。 このため、ExcelではBisual Vasic Editor というプログラム(マクロ)を記述する用紙を用意してくれています。 Bisual Vasic Editor に記述する言語はVBAという種類のものですが、 関数式の作り方とよく似ていますので、取り付きやすいと思います。 是非、挑戦してみて下さい。
お礼
親切丁寧な説明、ありがとうございました。エクセル初心者の私にとっては、ハードルが高そうですが、頑張ってみます。また、わからないことがあったら、質問しますのでよろしくお願いします。
[イミディエイト] ? CharCount("A,D,N,/", "A") 1 ? CharCount("A,D,N,/", "/") 1 ? CharCount("A,D,N,/", ",") 3 Public Function CharCount(ByVal strText As String, ByVal strChar As String) As Integer CharCount = Len(strText) - Len(Replace(strText, strChar, "")) End Function 大した手間でもないので CharCount関数を自作するのが手っ取り早いと思いますよ。 =CharCount(A1, "A") と、数式に書けばいいです。 もちろん、数式でも同じことが出来ます。が、常に長い式を書くのは煩わしいかと思います。
補足
=CharCount(A1:D1, "A")と入力したら、#NAME?のエラーが出てしまいました。範囲のなかに様々な文字、半角、全角が混じっているのがいけないのでしょか? エクセルは初心者で、何度も何度も質問してすみません。
- pamsd
- ベストアンサー率18% (39/209)
=LEN(A1)-LEN(SUBSTITUTE(A1,"A","")) とすれば "A"が 何文字あるのか わかります。
補足
範囲のA1のところを、「A1:D2」に指定したのですが、#VALUE!のエラーが出てしまいました。範囲の中に様々な文字があるのがいけないのでしょうか?
- ryuujiok2205
- ベストアンサー率21% (233/1098)
これ、「,」を除く文字数でいいんですか? なら、問題の文字列が入ってるセルをA1として次。 =(LEN(A1)+1)/2
補足
質問がうまく説明できてなくてごめんなさい。 指定した範囲の中に、Aが何個あるかを表示したいのですが・・・
- H-SAP
- ベストアンサー率41% (31/74)
文字数のことでしょうか。 LEN(文字列) 例えばA1の文字数なら =LEN(A1) でA1の文字数になります。
補足
質問の仕方がへたくそでごめんなさい。 文字数ではなく、範囲の中にAは何個あるか、/は何個あるかを表示したいのですが・・・
お礼
再度のお答え、本当にありがとうございました。教えていただいた通りに「&」を使ったら出来ました。また、質問をするかも知れませんので、よろしくお願いいたします。