複数条件を満たし、かつ、重複を除いた値(ユニーク化した値)を算出する
関数(またはマクロ)を教えてください。
※マクロの場合は、別シートへの出力が希望です。
一度、SUMPRODUCT((Sheet1!$C$2:$C$65536="2011/1/17")*(Sheet1!$D$2:$D$65536
="2011/1/25"))で算出してみましたが、重複した値までカウントしてしまうので、困っており
ます。
日付1と日付2を1つの組み合わせとし、フラグ列の重複を除いた状態(ユニーク化した状態)
で、種類数を算出出来れば嬉しいです。
【元データ】
住所 職業 日付1 日付2 フラグ
東京都 会社員 2011/1/17 2011/1/28 AAA
千葉 会社員 2011/1/17 2011/1/28 BBB
東京都 主婦 2011/1/17 2011/1/28 AAA
愛知 公務員 2011/1/17 2011/1/25 AAA
神奈川 主婦 2011/1/17 2011/1/25 CCC
富山 無職 2011/1/31 2011/2/11 DDD
沖縄 公務員 2011/1/31 2011/2/11 EEE
北海道 無職 2011/1/31 2011/2/11 EEE
埼玉 会社員 2011/1/31 2011/2/11 DDD
沖縄 公務員 2011/3/14 2011/3/25 GGG
千葉 会社員 2011/3/7 2011/3/18 HHH
【希望】
日付1 日付2 数
2011/1/17 2011/1/25 2 ←2011/1/17と2011/1/25の組み合わせで、フラグ列にAAA,CCCの2種類あり
2011/1/17 2011/1/28 2 ←2011/1/17と2011/1/28の組み合わせで、フラグ列にAAA,BBBの2種類あり
2011/1/31 2011/2/11 2 ←2011/1/31と2011/2/11の組み合わせで、フラグ列にDDD,EEEの2種類あり
2011/3/7 2011/3/18 1 ←2011/3/7と2011/3/18の組み合わせで、フラグ列にHHHの1種類あり
2011/3/14 2011/3/25 1 ←2011/3/14と2011/3/25の組み合わせで、フラグ列にGGGの1種類あり
分かり難くて申し訳ありませんが、どうぞよろしくお願いいたします。
A 回答 (1件)
- 最新から表示
- 回答順に表示
No.1
- 回答日時:
こんばんは!
一例です。
↓の画像のようにSheet1に作業用の列を4列使っています。
作業列1のF2セルに
=IF(A2="","",C2&"_"&D2)
作業列2のG2セルに
=IF(OR(F2="",COUNTIF($F$2:F2,F2)<>1),"",ROW())
作業列3のH2セルに
=F2&E2
作業列4のI2セルに
=IF(COUNTIF($H$2:H2,H2)=1,ROW(),"")
としてF2~I2セルを範囲指定し、I2セルのフィルハンドルでダブルクリック、またはオートフィルでずぃ~~~!っと下へコピーしておきます。
(作業列が目障りであれば数式を入力後、非表示にします)
そして、Sheet2のA2セルに
=IF(COUNT(Sheet3!$G:$G)<ROW(A1),"",INDEX(Sheet3!C:C,SMALL(Sheet3!$G:$G,ROW(A1))))
として、隣のB2セルまでコピー
(セルの表示形式は「日付」にしておきます)
C2セルには
=IF(COUNTBLANK(A2:B2),"",SUMPRODUCT((Sheet3!$C$1:$C$1000=A2)*(Sheet3!$D$1:$D$1000=B2)*(Sheet3!$I$1:$I$1000<>"")))
(SUMPRODUCT関数はデータ量が多すぎるとPCにかなりの負担をかけますので、とりあえず1000行目までとしています)
として最後にA2~C2セルを範囲指定しC2セルのフィルハンドルでオートフィルで下へコピーすると
画像のような感じになります。
以上、かなり泥臭い方法ですが、他に良い方法があればごめんなさいね。m(__)m
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) カラム上の重複を削除するクエリを教えてください 3 2022/04/12 14:11
- Excel(エクセル) ¥マークを含むパスの処理について(マクロ、または関数) 2 2022/12/25 02:11
- SQL Server ACCESSで3ファイルを結合して、表を作成するやり方を教えて下さい。 17 2022/08/15 20:34
- Excel(エクセル) 名前と日付が一致する箇所にフラグを立てる関数が知りたいです 4 2022/08/11 02:24
- SQL Server ACCESSで複数テーブルを結合して、リストを作る方法を教えてください。 2 2022/08/12 19:32
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- SQL Server ACCESSで表が作りたく、そのためのSQL文や設定方法を教えてください。 1 2022/08/15 12:28
- Visual Basic(VBA) Excel(VBA) 特定の条件に該当する行の値、書式を同じセルにコピ&ペーストしたいです 1 2022/05/21 18:18
- Excel(エクセル) 表に書いてある単語を1つの行に重複させないで書き出したい。 複数の列行にそれぞれ職種が入力されている 6 2022/05/25 04:49
- Visual Basic(VBA) vbaエクセルマクロ RemoveDuplicatesについて RemoveDuplicatesを使 3 2023/02/28 01:13
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
VLOOKUP関数について
-
英数字のみ全角から半角に変換
-
Microsoft Formsで「応答」から...
-
1つのPCに「Excel 2010」「Exc...
-
マイクロソフト オフィスについて
-
【スプレッドシート】指定の日...
-
Office 2021 Professional Plus...
-
【Microsoft Forms】回答を削除...
-
会社PCのメールが更新されない
-
vb.net オブジェクト指向につい...
-
outlookのメールが固まってしま...
-
Office2021を別のPCにインスト...
-
Microsoft Formsの「個人情報や...
-
【スプレッドシート】白色のセ...
-
エクセルマクロ(超初心者)
-
Excel VBA 日程表からスケジュ...
-
エクセルでXLOOKUP関数...
-
マイクロソフト 一時使用コード...
-
teams設定教えて下さい。 ①ビデ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
マイクロソフト 一時使用コード...
-
英数字のみ全角から半角に変換
-
Office2021を別のPCにインスト...
-
Microsoft Formsの「個人情報や...
-
officeビジネス型のワードやエ...
-
会社PCのメールが更新されない
-
【スプレッドシート】指定の日...
-
Microsoft Officeを2台目のPCに...
-
何このステータスバー
-
2つのシートの一致する行のセ...
-
会社のTeamsのことで相談です。...
-
エクセルにリンクされるのをし...
-
Windows 11で、IME言語バー(IM...
-
office2010とoffice365の共存で...
-
Microsoftのパソコンです。 エ...
-
エクセルでXLOOKUP関数...
-
Excel関数について質問ですm(__)m
-
VBA
-
自分の専門分野の仕事。初見で...
おすすめ情報