![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
Excelの質問です。同じ文字列が複数あった場合、それはいくつあっても1とカウントしたいのですが、なかなかうまくいかないので、お力を貸して下さい!
例として、添付画像のような表があったとします。
今回求めたいのは「色の種類」と「合計」です。
①「色の種類」は、その日に何種類の色を使用したか種類の数を求めたい
②「合計」は、1日に複数同じ色があってもそれは1と数えた状態で、すべての日数分の合計を求めたい
というものなのですが、どのような数式を使用すればよろしいでしょうか?
ご回答いただけると嬉しいです。
宜しくお願い致します!
![「Excel 数の数え方 種類の数を数えた」の質問画像](http://oshiete.xgoo.jp/_/bucket/oshietegoo/images/media/7/542812363_5b90d5b7db4a4/M.jpg)
No.3ベストアンサー
- 回答日時:
こんばんは!
一案です。
この質問限定の関数(ユーザー定義関数)を作ってみてはどうでしょうか?
(二つのユーザー定義関数を作ってみました)
Alt+F11キー → メニュー → 挿入 → 標準モジュール → VBE画面のカーソルが点滅しているところに↓のコードをコピー&ペースト
Function nikkei(myRng As Range) '//この行から//
Dim cnt As Long, c As Range, myStr As String
For Each c In myRng
If InStr(myStr, c) = 0 Then
cnt = cnt + 1
myStr = myStr & c & ","
End If
Next c
nikkei = cnt
End Function
Function goukei(myArea As Range, c As Range)
Dim i, cnt As Long, myRng As Range
For i = myArea(1).Row To myArea(myArea.Count).Row
Set myRng = Range(Cells(i, myArea(1).Column), Cells(i, myArea(myArea.Count).Column))
If WorksheetFunction.CountIf(myRng, c) > 0 Then
cnt = cnt + 1
End If
Next i
goukei = cnt
End Function '//この行まで//
Excel画面に戻り(VBE画面を閉じて)通常の関数と同じ使い方をします。
画像の配置では、まずF2セルに
=nikkei(B2:E2)
という数式を入れ下へフィル&コピー!
B9セルに
=goukei(B$2:E$5,A9)
という数式を入れ下へフィル&コピー!
これでもお望みの結果になると思います。m(_ _)m
No.4
- 回答日時:
②はNo.1さんがご提示の方法で。
①は以下でどうでしょうか(ブランクの処理が難しいですね)
F2
=SUMPRODUCT(1/COUNTIF($B2:$E2,IF(ISBLANK($B2:$E2),"",$B2:$E2)))-IF(COUNTBLANK($B2:$E2)>0,1,0)
②と同様に配列数式なので、式をコピペした後、Ctrlキー、Shiftキー、Enterキーの同時押しで確定してください。
その後、下方向にフィルコピーです。
No.2
- 回答日時:
No1です。
数えるだけなので、配列数式にする必要はなさそうな気がしてきました。
スマホからなので未検証ですが、
=COUNTIF(MMULT(IF($B$2:$E$5=$A9,1,0),{1;1;1;1})>0)
だけでよさそうに思います。
No.1
- 回答日時:
こんにちは
①は検索すればたくさん解説しているサイトが見つかるはずです。
以下はその一例
https://www.excelspeedup.com/unique/
https://bellcurve.jp/statistics/blog/15370.html
②は解説サイトを探すより、作成した方が早そうなので…
ご提示のレイアウトで、B9セルに
=SUM(IF(MMULT(IF($B$2:$E$5=$A9,1,0),{1;1;1;1})>0,1))
の式を入れ、Ctr+Shift+Enterで確定(←配列数式なので必須です)
確定後、下方にフィルコピーでいかがでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- その他(コンピューター・テクノロジー) googleスプレッドシートでカッコ内の文字数をカウントしたい 1 2023/01/17 15:52
- Excel(エクセル) <追加質問>【Excel関数】特定の文字を別表のリストの文字に変換したい 5 2022/10/23 13:09
- 英語 英文法の総称表現についてしっかり理解できているかを確認してほしいです。 ①The rose smel 2 2023/01/10 22:12
- その他(IT・Webサービス) 文字を種類ごとに分けてカウントしてくれるサイトなどご存知だったら教えてください。 私はあるゲームの確 1 2022/11/23 18:53
- Excel(エクセル) Excel(エクセル)でフィルター抽出後、非表示の行を計算しないで、合計を算出する方法 【内容】 添 4 2023/01/30 17:17
- 数学 数学の質問です。 判別式の用途を教えて下さい。 ❶解の個数の確認。 ②式を作る過程の性質上文字を1種 1 2022/12/31 14:21
- Excel(エクセル) エクセル関数の変わった使い方 3 2022/05/13 17:12
- 数学 期待値について 12 2022/10/12 19:02
- Excel(エクセル) Excel2019 列と列(2列)の数値の重複を調べたい 1 2023/05/11 13:35
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excel 数式バーの情報を、別シ...
-
Excelの数値の小数点表示につい...
-
Excelで、時間の引き算でマイナ...
-
【マクロ】A列最終行までを、カ...
-
【ExcelVBA】最終行の取得で困...
-
Excelのセル値に基づいて図形の...
-
Excelで数式を用いて番号を順に...
-
Excel関数の式の作り方を教えて...
-
EXCELのページを、枠線を維持し...
-
他部署からもらう データで、 ...
-
とびとびの大量セルを選択した...
-
Excel 最小二乗法 二次関数
-
エクセルで現場ごとに機材の移...
-
エクセルの数式バーのフォント...
-
Excel 1の位の数字で処理を分岐...
-
EXCELの散布図で日付が1900年に...
-
Excelについて
-
エクセルの数式について教えて...
-
【ExcelVBA】名前を付けて保存→...
-
エクセルでファイルの最終更新...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルの数式バーのフォント...
-
エクセルでファイルの最終更新...
-
2列に入っているデータを1列...
-
データチェックを行うエクセル...
-
再質問です。マクロの修正箇所...
-
エクセルで 自動的に◯や数字を...
-
数字入力後他の文字等が表示さ...
-
Excel 小さくなったスクロール...
-
F9キーについて。
-
【ExcelVBA】ダブルクォーテー...
-
Excelに詳しい方! B列が「日...
-
セルの数を求めたい
-
Excelを無料で使うには? パソ...
-
IFとIFS関数
-
【Excel】別シートから条件に合...
-
EXCELの散布図で日付が1900年に...
-
ある表にフィルターをかけて出...
-
【ExcelVBA】名前を付けて保存→...
-
Excelセルを跨いで合計を出す方法
-
エクセルのツールバーから数値...
おすすめ情報