ここから本文です

エクセル関数 シート1のセルb2~g32に 土日祝日会社の休業日なら〇の記号、 平...

asa********さん

2018/7/110:57:39

エクセル関数
シート1のセルb2~g32に
土日祝日会社の休業日なら〇の記号、
平日なら×の記号を入力する方法教えて下さい。

エクセル超初心者です。

上記内容のシートを作成したく思い

ます。
b2に入れる関数を教えて下さい。

Date関数をセルc1,d1から引用して、セルa2に入力

a3以降a2+1の相対参照でコピーしてa2~a33まで数式をいれています。

シート2に会社の休業日と祝日をb2~b28まで入力しています。
if関数、countif関数、workday関数、workday.intl関数、Weekday関数何を使ってもできません。

夫にVBAならすぐできるといいますが、私が全く分からないので、関数でしたくおもいます。

恐れいりますが、ご教授頂けますようお願いします。

閲覧数:
84
回答数:
3
お礼:
500枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

2018/7/111:06:45

シート1のA列に日付があって、シート2のB列に祝日や休みの日付があって、シート1のB列で、「自分の行のA列の日付が土曜か日曜か休みの日なら○、それ以外は×」ですね。難しくないですよ。

・土日の判断
weekday関数で第二引数を3にすると月曜始まりで0から6の数値を返すので、「5以上」なら土日です。
(weekday(A2, 3)>=5)

・休みの日の判断
「シート2のB列に、今日の日付が含まれる」ですから、countif関数で0でなければいいのです。
contif(シート2!$B$2:$B$28, A2)

これらのどちらか一方でも満たせば○なので、or関数を使います。

=if( or(weekday(A2, 3)>=5, contif(シート2!$B$2:$B$28, A2)), "○", "×")

質問した人からのコメント

2018/7/1 12:11:58

言葉足らずの質問にも丁寧に答えてくださりありがとうございます。

書いていただいた式を入力しましたら、できました。

まだ理解していないので、理解してから、上司に提出します。

ベストアンサーには悩みましたが、

一番最初に回答くださったので。

本当にありがとうございました。

ベストアンサー以外の回答

1〜2件/2件中

並び替え:回答日時の
新しい順
|古い順

all********さん

2018/7/111:20:03

>シート1のセルb2~g32に
a2~a33・・・ 32セル
??

祝日一覧の下に社休日付入力 例ではF2:F30
例では 2018/5/2

B2
=IF(A2="","",IF(OR(WEEKDAY(A2,2)>5,COUNTIF($F$2:$F$30,A2)),"○","×"))
下方向にコピー

でも
夫にVBAならすぐできるといいますが
旦那さん作ってくれないのですか?

ちなみにA列
表示形式 ユーザー定義の種類
mm/dd(aaa)

>シート1のセルb2~g32に
a2~a33・・・ 32セル
??

祝日一覧の下に社休日付入力...

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

mit********さん

2018/7/111:11:34

C1セルには西暦年の2018、D1セルには7月なら7と入力します。
A2セルには次の式を入力して下方にドラッグコピーします。

=IF(MONTH(DATE(C$1,D$1,ROW(A1)))<>D$1,"",DATE(C$1,D$1,ROW(A1)))

月末までの日付が表示されますね。
B2セルには次の式を入力して下方にドラッグコピーすればよいでしょう。

=IF(A2="","",IF(OR(WEEKDAY(A2,2)>=6,COUNTIF(Sheet2!B:B,A2)),"〇","×"))

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

この質問につけられたタグ

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる