エクセル関数を教えてください。
下記のシフト表のようなものを作成しているのですが、
【Sheet1】
A列 B列 C列 D列 ・・・・
1 氏名 4/8 4/9 4/10・・・・
2 勤務者名 ● △ ■
B列以降は連続した日付で
2行目は出勤日に記号を入力します。
記号は仕事種類によって違うので、種類はいろいろあります。
ちなみに、【Sheet1】のひな形は変更不可です。
この表を元に【Sheet2】に勤務者名を入力すると、
最初に出勤した日と、最後に出勤した日を表示させたいのです。
IFやVLOOK関数を使うのかな?と思いいろいろやってみたのですが、
うまくできませんでした。。。
ご協力よろしくお願いします。
No.2
- 回答日時:
その関数を考える際に、出勤していない日は何と入力されているのか知る必要がありますので、補足等でお教え願います。
もし、出勤していない日には何も入力されていない場合には、その事をお教え願います。
この回答への補足
説明不足ですみません。
休日は一斉にとるので、表に反映させていません。
ということで、B列以降は何らかの記号が入っていることになります。
よろしくお願いします。
No.3
- 回答日時:
>2行目は出勤日に記号を入力します。
既出回答でも指摘されていますが,出勤日に記号を手入力していて,出勤していない日はホントに何も入ってない数式も入ってないただの空セルになっているなら
最初の出勤日:
=IF(COUNTA(Sheet1!B2:IV2),INDEX(Sheet1!B$1:IV$1,MATCH("*",B2:IV2,0)),"")
最後の出勤日:
=IF(COUNTA(Sheet1!B2:IV2),INDEX(Sheet1!B$1:IV$1,MATCH("",B2:IV2,-1)),"")
実際に何列から何列までの表になっているのかご相談が手抜きですが,ちゃんと実際のセル範囲に合わせて数式を直してから使ってください。
No.4ベストアンサー
- 回答日時:
添付図参照
Sheet2 おける式(何れも配列数式)は次のとおり。
B2: {=IF(A2="","",MIN(IF(OFFSET(Sheet1!$A$1,MATCH(A2,Sheet1!$A:$A,0)-1,1,,31)="",10^7,OFFSET(Sheet1!$A$1,,1,,31))))}
C2: {=IF(A2="","",MAX(IF(OFFSET(Sheet1!$A$1,MATCH(A2,Sheet1!$A:$A,0)-1,1,,31)="",0,OFFSET(Sheet1!$A$1,,1,,31))))}
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 3つのプロシージャをまとめたら実行時エラー発生で対応不能 6 2022/05/17 01:47
- Excel(エクセル) エクセルでシフト表を作成中で困っています。 3 2022/06/22 11:49
- Excel(エクセル) 出退勤管理の遅刻・早退時間について 3 2023/08/10 15:33
- Excel(エクセル) 【Excel質問】 「本日の日付」から指定条件を満たす営業日経過後の日数を表示させる関数式 3 2022/06/06 23:28
- Excel(エクセル) SUMIFSと日付変換 10 2023/04/16 15:38
- その他(Microsoft Office) 従業員増減対応で当番種類の増減対応な当番表 21 2022/07/19 07:30
- Excel(エクセル) エクセルでエラーを無視して一番左側のセルの値を返したい 2 2023/07/27 13:06
- Excel(エクセル) マクロ/VBAについて教えてください。 10 2022/05/27 12:59
- その他(Microsoft Office) Excelで該当しない項目(#N/Aの商品名)を簡単に表示・抽出させる方法についてです 1 2022/08/25 22:12
- Visual Basic(VBA) Sheet「状況」から、分類の年齢別カウント数をSheet「D表」へ転記する下記マクロを作っています 7 2022/12/14 17:57
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
Microsoft 365のディフェンダー...
-
英数字のみ全角から半角に変換
-
MicrosoftOfficeの1ユーザー2...
-
MicrosoftOffice2019なんですが、
-
会社PCのメールが更新されない
-
Excel 日付を比較したら、同じ...
-
【Excel VBA】PDFを作成して,...
-
Microsoft Formsの「個人情報や...
-
outlookのメールが固まってしま...
-
Outlook で宛先が複数の場合の人数
-
Office 2021 Professional Plus...
-
エクセル関数について
-
マイクロソフト 一時使用コード...
-
エクセルの貼り付け「リンクさ...
-
Microsoft365で写真をアルバム...
-
会社のTeamsのことで相談です。...
-
officeビジネス型のワードやエ...
-
Microsoft Officeを2台目のPCに...
-
複数の写真を1枚に印刷
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【スプレドシート】IMPORTRANGE...
-
【スプレッドシート】指定の日...
-
英数字のみ全角から半角に変換
-
会社PCのメールが更新されない
-
マイクロソフト 一時使用コード...
-
Office 2021 Professional Plus...
-
エクセルで例えば、関数を使っ...
-
Microsoft Formsの「個人情報や...
-
1つのPCに「Excel 2010」「Exc...
-
エクセルで例えば、A1に㈱ベ...
-
理由を教えてください。
-
エクセルでXLOOKUP関数...
-
マイクロソフト オフィスについて
-
VLOOKUP関数について
-
teams設定教えて下さい。 ①ビデ...
-
Googleのスプレッドシートでシ...
-
【Excel VBA】PDFを作成して,...
-
Microsoft365で写真をアルバム...
-
Outlook で宛先が複数の場合の人数
-
Excel テーブル内の空白行の削除
おすすめ情報