- ベストアンサー
excelでセル内の項目数のカウント
1つのセル内に入っている文字数をカウントしたい。 例えばA1セルに 自己委託、売買区分、指値成行、取引目的、注文枚数、注文残枚数、想定元本、手数料計、消費税計、相手先コード、相手先、担当者、支店、ディーラー、所管部、部門、銘柄コード、銘柄、通貨、決済期日、決済方法、約定番号 というデータが入っているとします。項目数は22ですが、「、」の数を数えて+1すれば項目数となりますがセル内の「、」の数え方はどうカウントすrばいいのでしょうか。 回答をよろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
=LEN(A1)-LEN(SUBSTITUTE(A1,"、","")) というふうに 「、」を なしに 置き換えてた文字列の文字数と 元の文字列を引けば、「、」の数がわかるでしょう。
その他の回答 (3)
- KUJIYA
- ベストアンサー率34% (53/152)
強引に =IF(MIDB(A1,1,2)="、",1,0)+IF(MIDB(A1,3,2)="、",1,0)+IF(MIDB(A1,5,2)="、",1,0)・・・・ のように、2バイトずつ「、」かどうかをチェックして、「、」だったら1を加算する方法は どうでしょう。 文字列が長くなれば、式が1つのセルには入り切らなくなるかもしれませんが、 機械的に数えられます。
お礼
Thank you very much !
- dejiji-
- ベストアンサー率38% (327/858)
一セル内の決まった文字のカウント方法は分かりませんが、項目数のカウントが出来ればよいのであれば、以下の方法を試してみて下さい。 文字の入力されているセルを別シートにコピーし貼り付け、A列全体を選択、データ→区切り位置から「次ぎ」をクリックして、区切る方法を「その他」を選択して右のボックスに区切ってあるマーク(多分全角の「、」だと思いますが)を入力し「次ぎ」に進み完了とする。 これで、カンマで区切られた文字が各セルに分解されます。これを、別セル(A10とか)に=COUNTA(1:1)とすれば、項目数がカウントされます。同じ行に数式は入れないようにして下さい。(循環参照でエラーになります。) こんな方法ではまずいでしょうか。
お礼
Thank you very much !
直接的な回答ではないのですが、 1つのセルに22もの項目を入れるというのは、Excel本来の使い方ではないと思います。1セルに1項目というのが一般的かつ合理的な使い方です。 どうしても1つのセルに22項目をひとまとめにして入れておく必要があるのなら仕方ありませんが、そうでないのなら、「データ区切り」の機能を使って1セル=1項目形式に展開するのがお勧めです。 まず、データの入ったセルを範囲指定します。次にメニューバーの「データ」から「区切り位置」を選択します。「区切り位置指定ウィザード」というのがあらわれますので、「カンマやタブなどの・・・」をチェックして「次へ」をクリック、「その他」をチェックして、その右側の空欄に「、」をいれて、「完了」をクリック。 以上の手順で、22個のデータが右の方へ1セル=1項目形式で展開されます。
お礼
Thank you very much !
お礼
見事なお手並み感服いたいまいた。おかげでうまくいきました.どうもありがとうございました