EXCELで同じ文字の入ったセルの個数を表示する

このQ&Aのポイント
  • EXCELで同じ文字の入ったセルの個数を数えて表示する方法を紹介します。
  • 具体的な手順に沿って、セル内の文字を比較し、同じ文字のセルの個数を取得します。
  • 集計結果を用いて、同じ文字の入ったセルごとに個数を表示することができます。
回答を見る
  • ベストアンサー

EXCELで同じ文字の入ったセルの個数を表示する

EXCELを使って、同じ文字の入ったセルの数を数えて表示したいのですが、具体的には セルA1~C1には人の名前 セルA2~A11、B2~B11、C2~C11には文字が入っています。 表示したいのはセルの値の合計ではなく、同じ文字の入ったセルの個数です。 例    A     B     C   鈴木   山田   佐藤 2 赤外   赤中   青中 3 青外   青中   赤内 4 赤外   青内   赤外 5 赤外   赤中   青中 6 青外   赤中   赤外  11 赤外   青内   赤外 集計 赤外 3    2     2 赤中 2    3     1 赤内 1    1     1 青外 2    1     2 青中 1    1     3 青内 1    2     1 このような感じです。 どなたか宜しくお願いします。

  • kogoro
  • お礼率84% (108/128)

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

  • ベストアンサー
  • kybo
  • ベストアンサー率53% (349/647)
回答No.1

例えば、Sheet1にその表があって、集計をSheet2に作成したいとすると、 赤外はA1のセルにあるとします。 B1のセルに =COUNTIF(Sheet1!A$2:A$11,$A1) の様に入れ、Enter、あとはB1のセルをコピーし、B2:B6、C1:D6に貼り付けするだけです。

kogoro
質問者

お礼

早速の回答有難うございます。 出来ました・・・感激!です。

その他の回答 (2)

  • imogasi
  • ベストアンサー率27% (4737/17068)
回答No.3

こんなのCOUNTIFだけで出来る簡単なことではないか。 難しいならその点を書いて質問すること。 四則演算・累乗ーSUM・COUNT-SUMIF・COUNTIFーその他色々、と、エクセル関数の易しいほうから3段階目の問題ではないか? 基本的なエクセル関数を勉強のこと。 ーー データ例を挙げるなら第11行まですべて挙げて、結果と照らして、読者が理解しやすいようにしてほしい。 7-10行を略すとそのことが判りにくい。

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.2

こんばんは! おそらく「赤外」「赤中」・・・といったデータを重複なしに表示することが大変だと思います。 それさえできればCOUNTIF関数で簡単に集計できると思います。 そこでVBAでの方法になってしまいますが、一例です。 Sheet1にデータ配置は↓の画像のようになっているものとします。 Sheet1のデータをSheet2のA列に表示させ、B列以降にそのデータ個数を表示させるようにしてみました。 Alt+F11キー → VBE画面が出ますので、画面左下の「This Workbook」をダブルクリックし ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub test() 'この行から Dim ws1, ws2 As Worksheet Dim i, j, k As Long Set ws1 = Worksheets(1) Set ws2 = Worksheets(2) Application.ScreenUpdating = False i = ws2.Cells(Rows.Count, 1).End(xlUp).Row j = ws2.Cells(1, Columns.Count).End(xlToLeft).Column Range(ws2.Cells(1, 1), ws2.Cells(i, j)).ClearContents k = ws1.Cells(1, Columns.Count).End(xlToLeft).Column Range(ws1.Cells(1, 1), ws1.Cells(1, k)).Copy Destination:=ws2.Cells(1, 2) For i = 2 To ws1.UsedRange.Rows.Count For j = 1 To k If WorksheetFunction.CountIf(ws2.Columns(1), ws1.Cells(i, j)) = 0 Then ws2.Cells(Rows.Count, 1).End(xlUp).Offset(1) = ws1.Cells(i, j) End If Next j Next i For j = 2 To ws2.Cells(1, Columns.Count).End(xlToLeft).Column For i = 2 To ws2.Cells(Rows.Count, 1).End(xlUp).Row ws2.Cells(i, j) = WorksheetFunction.CountIf(ws1.Columns(j - 1), ws2.Cells(i, 1)) Next i Next j Application.ScreenUpdating = True End Sub 'この行まで ※ Sheet1のデータを重複なしに表示するだけのマクロでも良かったのですが、ついでに最後までやってしまいました。 ※ データは何列・何行あっても対応できるようにしています。 ※ Sheet1のデータ変更があるたびにマクロを実行する必要があります。 以上、お望みの方法でなかったらごめんなさいね。m(_ _)m

kogoro
質問者

お礼

早速の回答有難うございます。 この方法だと、人が増えても、データーが増えても大丈夫そうですね。 明日にでも早速試してみます。

関連するQ&A

  • Excelのフィルタをかけた項目を別のセルに表示したい

    2行目にオートフィルタをかけて、組で赤を選んでフィルタをかけたときに、A1のセルに赤と表示させる方法を教えてください。A列のみ印刷するのでA列に組を表示させたいのです。よろしくお願いします。   A  B 1 2 名前 組 3 佐藤 赤 4 田中 青 5 山田 黄 6 鈴木 赤 7 木村 黄 8 井上 赤

  • Excelでのセルの検索

    セルの検索方法について、質問します。 現在の表       A    B      C     D --+-------+-------+-------+-------+------+-------+------- 1   鈴木   加藤   斎藤    --+-------+-------+-------+-------+------+-------+------- 2   佐藤   清水         --+-------+-------+-------+-------+------+-------+------- --+-------+-------+-------+-------+------+-------+------- 3   山田              --+-------+-------+-------+-------+------+-------+------- 理想形       A    B      C     D --+-------+-------+-------+-------+------+-------+------- 1   鈴木   加藤   斎藤   斎藤 --+-------+-------+-------+-------+------+-------+------- 2   佐藤   清水         清水 --+-------+-------+-------+-------+------+-------+------- --+-------+-------+-------+-------+------+-------+------- 3   山田              山田 --+-------+-------+-------+-------+------+-------+------- 上記のような表(現在の表)で、D列に空白セル以外の一番右のセルを探して表示できるような関数を探しているのですが?。 仕事で進捗表の作成を行っており、困っていますのでよろしくお願い致します。

  • セル内にある文字の個数を知りたい

    エクセル2002を使用してますが、セル内にある文字の個数を知りたいとき、どのような関数を使えばいいのでしょうか? たとえば、A1に「ABCAABACABAC」 という文字列があった場合、Aの個数を知りたいのです。 このとき結果をB1で表示させるにはどうすればいいのでしょうか? よろしくお願いします。

  • エクセルで文字色がついているセル数をカウント

    エクセル初心者です。 エクセルセルに 佐藤 鈴木 青山 渡辺 と入力されてあって佐藤と鈴木の文字の色が青だった場合文字色(青)がついているセルをカウントし,あるセルに2と表示することはできるのでしょうか。条件付書式や検索と思いましたがわかりません。よろしくお願いします。

  • エクセルで条件に一致したセルの隣のセルを取得したい

    下のような「得点」という名前のシートがあります。 (「田中」のセルがA1です。)  [ 田中 ][ 10 ][ 200 ]  [ 山田 ][ 21 ][ 150 ]  [ 佐藤 ][ 76 ][ 250 ]  [ 鈴木 ][ 53 ][ 350 ] 別のシートのA1セルに、「佐藤」と入力すると、  [ 佐藤 ] 「得点」シートから「佐藤」の列を見つけて、B1、C1に  [ 佐藤 ][ 76 ][ 250 ] のように表示させたいのですが、B1、C1にはどのような式を書けば良いのでしょうか。 「得点」シートでは氏名が重複する事はありません。 IF文を使うと思うのですが、いまいち良く分かりませんでした。 よろしくおねがい致します。

  • エクセルの計算式で表の合計を出す

    A,B a,鈴木 a,佐藤 a, a,鈴木 a, a,加藤 a, b,山田 b,鈴木 b, 上記のようなcsv ファイルがあります。 列Aには、a,b,c,d...といったいくつかの文字がそれぞれ複数あります。 列Bには、人名が入ったセルと空欄のセルが混じっています。 そして、人数の合計を列Aに示された文字ごとに出す方法をお願いします。 理想は、空いているセルに、計算式を入力し、 a,4 b,2 というように表示出来ればベストです。 お願いします。

  • エクセルのセル内に文字と計算結果の表示

    エクセルの1つのセル内に文字と計算結果の両方を表示させる方法を教えて下さい。 例えば、セルのA1に数値10を入れて、B1に数値5を入れてあったとします。 で、セルのC1にA1とB1の合計を「合計 15」みたいな形で、文字と計算結果の両方をC1のセル内に表示させたいのですが。 ただ合計の数字のみを表示させるなら、=SUM(A1+B1)で良いわけですが、この数値の前に”合計”という文字を入れたいのです。 宜しくお願いします。

  • Excelで名寄せしてデータ個数を集計する方法

    このような表があります。 001 山田 001 山田 002 鈴木 003 田中 004 高橋 004 高橋 005 鈴木 005 鈴木 005 鈴木 006 高橋 007 鈴木 008 鈴木 この名前(「山田」等)を基準にして名寄せをし、かつデータ個数を集計しなくてはなりません。 普通に集計をすると、 001 山田 001 山田 山田 データ個数 2 002 鈴木 鈴木 データ個数 1 003 田中 田中 データ個数 1 004 高橋 004 高橋 高橋 データ個数 2 005 鈴木 005 鈴木 005 鈴木 鈴木 データ個数 3 006 高橋 高橋 データ個数 1 007 鈴木 008 鈴木 鈴木 データ個数 2 ・・・という具合になりますが、番号(001等)の枠を超えて名寄せしたいのです。 希望する集計結果としては、 001 山田 001 山田 山田 データ個数 2 002 鈴木 005 鈴木 005 鈴木 005 鈴木 007 鈴木 008 鈴木 鈴木 データ個数 6 003 田中 田中 データ個数 1 004 高橋 004 高橋 006 高橋 高橋 データ個数 3 ・・・という表示になるようにしたいのです。(番号も必要データなので消去せずに残したいです) 今までは、番号&名前レベルでまず集計し、あとは検索して同じ名前があればカット&ペーストという非常に面倒な作業をマニュアルでしてきました。 何かもっと楽にできる方法をご存知の方はぜひ教えてください。

  • エクセル 特定の文字を含むセルを かえす

    教えてください! 特定の文字を含むセルを返したいのです。 たとえば C1セルに 田中ゆうこ D1セルに 佐藤いちろう E1セルに 酒井みみ F1セルに 鈴木かなえ G1セルに 久保ごう こんな風に横に名前があるデータがあります。 A1セルに「鈴木」と入力したら C1~G1にある「鈴木」とつく名前を検索し、 該当したらB1セルに返したいのです。 この場合 B1セルに 「鈴木かなえ」と返ってほしいのですが どのようにしたら出来るのでしょうか? また、横列の名前の中に同名は存在しません。 どうぞ皆様の知恵をお貸しください! お願いいたします。

  • EXCELのセルの個数の算出

    文字や数値を含んだセルの数を求めたいのですが・・・ それだけならわかるのですが、 式を含んだ場合がわかりません。 VBAは使わずに求めたいのですが・・・ 例えば、A1にあ、B1に10、C1に=IF(D1="","",D1) と入力されているとします。 A1~C1の範囲で、D1に何も入力されていない時はセルの個数を2、 D1に何か入力されたらセルの個数は3としたいのです。 要するに、見た目上何かセルに入ってれば、 個数の対象としたいのですが・・・ どなたかおわかりになられるかたがおられましたら、 是非ともよろしくお願い致します。

専門家に質問してみよう