こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

エクセル関数 1つのセル内文字カウント

1つのセル内の文字をカウントしたいのですが、その中に、スペースや改行がはいっています。
スペースや改行ま1文字としてカウントせずに、無視して、文字だけカウントすることができるのでしょうか。
さらに、その際、
1)全角文字だけカウント
2)半角文字だけカウント
3)全角+半角それぞれ1としてカウント
したいのですが、そんなことできるのでしょうか?

投稿日時 - 2008-08-12 20:36:06

QNo.4246970

すぐに回答ほしいです

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

#1さんの回答を参考にさせて頂きました。(こういった補足は#1さんの意図に背いているのかもしれませんが、普通の方は分からないと思いますので。)

A1「a k3 b(改行)あ(改行)け に 」(例)
B1「(改行)」
A2「=SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A1," ","")," ",""),B1,"")」・全角空白・半角空白・改行を削除
A3「=LEN(A2)」→7 (3)全角+半角それぞれ1としてカウント
A4「=LENB(A2)」→10 ・全角2バイト・半角1バイトとしバイト数をカウント
A5「=A4-A3」→3 (1)全角文字だけカウント
A6「=A3-A5」→4 (2)半角文字だけカウント

ご確認お願いいたします。

投稿日時 - 2008-08-12 22:04:22

お礼

ありがとうございます。
エクセルが得意でないので、わかりやすい解説ありがとうございます。

投稿日時 - 2008-08-13 09:18:20

ANo.3

このQ&Aは役に立ちましたか?

20人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

No2です。
改行も無視ですね
SUBSTITUTE(SUBSTITUTE(A1," ","")," ","")

SUBSTITUTE(SUBSTITUTE(SUBSTITUTE(A$1,CHAR(10),"")," ","")," ","")
に置き換えてください。

投稿日時 - 2008-08-12 22:30:37

お礼

ありがとうございます。
早速試してみます。

投稿日時 - 2008-08-13 09:17:30

ANo.2

取り合えず 半角スペース 全角スペース を除いた文字列
3)全角+半角それぞれ1としてカウント
=LEN(SUBSTITUTE(SUBSTITUTE(A1," ","")," ",""))
1)全角文字だけカウント
=LENB(SUBSTITUTE(SUBSTITUTE(A1," ","")," ",""))-LEN(SUBSTITUTE(SUBSTITUTE(A1," ","")," ",""))
2)半角文字だけカウント
=LEN(SUBSTITUTE(SUBSTITUTE(A$1," ","")," ",""))*2-LENB(SUBSTITUTE(SUBSTITUTE(A$1," ","")," ",""))
で試してみてください。

投稿日時 - 2008-08-12 21:59:29

お礼

ありがとうございます。
このままコピペで使わせていただきます。

投稿日時 - 2008-08-13 09:18:43

ANo.1

LENB関数
LEN関数
SUBSTITUTE関数
を関数ヘルプで調べてみましょう。
参考になると思います。

投稿日時 - 2008-08-12 21:14:18

お礼

SUBSTITUTE関数
つかったことなかったので、見てみます。

投稿日時 - 2008-08-13 09:19:16