Excel (一般機能)

Excelの一般機能に関するフォーラムです。
  • 解決済みのトピックにはコメントできません。
このトピックは解決済みです。
質問

 
(指定なし : 指定なし)
出席表の出席を一覧表に反映させるためには?
投稿日時: 19/05/13 14:27:19
投稿者: 雲取山

出席表一覧を作っていますが、その一覧表に転記するための関数にトライしていますが、よくわからずに難航しています。まず、一人一人の出席表があり、それを下記にある出席一覧表に出席者全員の出席を集約した表があります。
いつもは、手入力で一覧表を仕上げていたのですが、手入力だと、間違えるのとの、なんとか効率的にしたいと思ってます。
調べたら、MACTH関数なのかなと思いましたが、私のスキルでは、理解が難しいので、教えてくださると助かります。
  
(Bさん出席表)
5/2 ○
5/5 ○
5/6 ○
5/7 ○
.
.
.
(出席一覧表)
日付  5/1 5/2 5/3 5/4 5/5 5/6 5/7 5/8…5/31
Aさん  ○  ○  ○ ○  ○ 
Bさん    ○       ○  ○ ○
Cさん  ○ ○ ○ ○
.
.
.
 

回答
投稿日時: 19/05/13 16:57:52
投稿者: 半平太

1.各出席表シートと、出席一覧表シートは、同じブック内にあるんですか?
  
2.Bさんの出席表は、シート名が「Bさん」になっているんですか?
  ※Bさんのデータが、何と言う名前のシートに載っているか分からないと始まらないので
   お聞きしています。(そうじゃないとしても、何らかの手がかり情報が必要です)
  
3.出席表のレイアウトは、「日付」がA1セルから下、「〇」印がB1セルから下ですか?
 
4.出席表の日付は、昇順ですね。
 
5.出席表で、日付がある行のB列には、必ず〇があるんですか?
  そうなら、〇があるかどうかチェックする必要はないですね?
 
  「日付の存在」=「出席」と判定できますので。

回答
投稿日時: 19/05/14 13:12:54
投稿者: Suzu

同一ワークブックに、各人の出席表のシートがあるとし、各シート名は、「Aさん」「Bさん」・・・ とします。
 
 
シート「Aさん」は、

    A
1  5月1日
2  5月3日
3  5月5日
4  5月10日
5  5月21日
6  5月30日
    :

とし、データは、31行目まで。
半平太さんが仰る様に、日付があれば、【出席】と判断できるとし
 
	A	B	C	D	E	F	G	H	I…
1	日付	5/1	5/2	5/3	5/4	5/5	5/6	5/7	5/8…5/31
2	Aさん
3	Bさん
4	Cさん

 
のフォーマットの時
B2 に =IF(ISERROR(MATCH(B$1,INDIRECT($A2&"!$A$1:$A$31"),0)),"","○")

回答
投稿日時: 19/05/14 16:41:02
投稿者: Mike

Suzuさんのシートを拝借して
"○";;;
に書式設定し、かつ、次式を入力したセル B2 を右方および下方にオートフィル
=NOT(ISERROR(MATCH(B$1,INDIRECT($A2&"!A1:A31"),0)))*1

回答
投稿日時: 19/05/14 19:41:48
投稿者: Suzu

Mikeさん
カスタム書式を使うなら NOTは要らない様な。。
;;"○" で。。

回答
投稿日時: 19/05/14 21:32:47
投稿者: Mike

Suzu さんの引用:
カスタム書式を使うなら NOTは要らない様な。。
;;"○" で。。

仰るとおりでした!

投稿日時: 19/05/28 19:27:50
投稿者: 雲取山

本当にみなさまのおかげで、問題が解決しました。
おかげで、MATCH関数の意味がわかりました。
これで、仕事もはかどります。
ありがとうございました。