初心者です。よろしくお願いします。希望日時をもとに、予約カレンダー表を作成したい。
1)重複しない日時に振り分けたい。
2)重複が回避できない場合は、そのセルに重複者の氏名を表示させたい。(1つのセルに複数の名前を表示させたい)
実際は5000件を超えるエクセルのデータがあります。
アクセスでクロス集計をしたところ、若い順番のデータが優先され同じ人が表示される結果となり、困っています。
データ件数が多く手作業でエクセルに登録するのが苦痛でミスも生じ困っているため教えていただければ幸いです。
よろしくお願いいたします。
<エクセル元データ>
連番 | 氏名 | 希望日 | 希望時間 |
---|---|---|---|
1 | 山田 | 2024/1/1 | 10:00 |
2 | 山田 | 2024/1/1 | 10:30 |
3 | 佐藤 | 2024/1/1 | 10:30 |
4 | 佐藤 | 2024/1/2 | 10:00 |
5 | 田中 | 2024/1/2 | 10:00 |
6 | 田中 | 2024/1/2 | 10:30 |
7 | 菊池 | 2024/1/2 | 10:00 |
8 | 菊池 | 2024/1/1 | 10:30 |
9 | 山口 | 2024/1/1 | 10:00 |
10 | 山口 | 2024/1/3 | 10:15 |
<アクセス結果>
希望日 | 10:00:00 | 10:15:00 | 10:30:00 |
---|---|---|---|
2024/01/01 | 山口 | 菊池 | |
2024/01/02 | 菊池 | 田中 | |
2024/01/03 | 山口 |
重複者の氏名を一つのセルに表示とのことですが、どのように表示するのでしょうか。
カンマ区切りとか改行するとか、具体的に説明してください。
また、最終目的はなんでしょうか。印刷するのが目的なら、レポートのVBAで比較的にシンプルに実現が可能です。
クエリでする必要性があるのなら、DJoin関数を使うといいでしょう。
DJoin 関数 - リスト文字列を取得する方法
hatena様
お返事ありがとうございます。
重複者についてはカンマ区切りでできればと思います。ただ、難しい事がわからないため、改行の方が難しくないのであれば、できるだけ易しい方が希望です。
最終目的は、予約日時を個人にデータで案内をする事です。
まずは教えていただいた、Djoin関数を見てみたいと思います。
ACCESSでクロス集計しなければいけない理由を明示して下さい。所謂EXCEL掲示板で質問しましたか?
りんごさま
お返事ありがとうございます。
アクセスのクロス集計にこだわりはなく、データが多くエクセルの場合、固まってしまうことから
初心者ながらアクセスの方がいいのではと思った次第です。
そのことから、エクセル掲示板ではまだ質問はしていません。
データ量(行数×列数)はどのくらいでしょうか。