- ベストアンサー
エクセルで特定の文字や数字の入ったセルをカウント
いつもお世話になっております。 A1セルに文字や数字を入力すると指定した範囲にあるA1セルの文字が入ったセルの数をカウントしようと、COUNTIF()でやってみたのですがうまくいきません。 例えば「ABC123」という品名が(1)「ABC123」の場合と省略して(2)「ABC」や(3)「123」で入力されているセルが有るので(1)、(2)、(3)を一度にカウントする方法を教えていただきたいので、よろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
(1)と(2)にはABC (1)と(3)には123 のように共通するワードがありますが (2)と(3) には共通するワードがないので たとえば (1)と(2)同時にカウントし (3)を別にカウントして 両方を足すという手があります。 =COUNTIF(B1:B10,"*" & LEFT(A1,3) & "*")+COUNTIF(B1:B10,RIGHT(A1,3))
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
補足すること。 質問が正確に書かれてない。 ABC(の部分)と123を分けるのは、どう考えている(どういうデータ状況な)のか? 文字と数字、英字と数字、1-3文字目と4文字目以降やいこう3文字など データのあり様の法則とか可能性を書かないと、手が付けられないのでは。 また区分はいつも2つなのか? コンピュターを使うときは、正確な思考(と表現)が求められる。 自分が状況を分かっているからと言って、初めて目にする、聞く読者にはわからないのだ、と判ることが、この問題を解決できるより大切。 == 一番単純な場合だと仮定すると 例データ A2:A5 ABC123 ABCD45 CVBBF12 AB234 B2の式 =LEFT(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(A2)&1234567890))-1) C2の式 =MID(A2,MIN(FIND({0,1,2,3,4,5,6,7,8,9},ASC(B2)&1234567890)),LEN(A2)-LEN(B2)+1) それぞれ下方向に行に式を複写。 結果 ABC123 ABC 123 ABCD45 ABCD 45 CVBBF12 CVBBF 12 AB234 AB 234 ーー これとて初心者が思いつける内容ではない。難しい。 WEBでは、Googleで 「Excel 文字列を文字と数字に分ける」で照会すれば、出てくるがね。 ーー VBAでやれば、IsINumeric関数があるので、各文字を繰返し判別する方法でできるので、この方法を思い付くのはやさしい。 === その後、B2セルかC2セルの文字を含むセルをカウントすることになる。 文字列を含むセル数のカウントは 「excel countif ワイルドカード」 https://ameblo.jp/sugoikaizen/entry-11484309535.html などを勉強する。
お礼
ご回答ありがとうございます。 そうですね。 確かに当方の表にも色んなパターンがあり一筋縄ではいかないことに気付きました。 例示のパターンだけなら当方でもなんとかできたのですが、色々考えているうちに難しくなってしまって質問しました。
- OKWavezz
- ベストアンサー率9% (14/151)
(1)、(2)、(3)をIFーELSE文で連結
お礼
お礼がおそくなり申し訳ありません。 ご回答参考になりました。 良く考えると色んなパターンのセルが有るのでご回答を参考に1つづつ式を作った方が分かりやすく、早い気がしますので頑張ってみます。 ありがとうございました。