アプリ版:「スタンプのみでお礼する」機能のリリースについて

先ほど教えて頂きました、コード
Private Sub Workbook_Open()
Dim tmp, dNow
tmp = Split(ThisWorkbook.Name, ".")
If Split(ThisWorkbook.Name, ".")(UBound(tmp)) <> "xlsm" Then
dNow = Format(Now, "yyyy/mm/dd")
With Worksheets("300")
If dNow >= Format(.Range("D39"), "yyyy/mm/dd") _
And dNow <= Format(.Range("E39"), "yyyy/mm/dd") Then
MsgBox ("「締め切りが完了しました」"), 48
Call 比較日付
Call 便利帳比較
Call マクロひな形保存
'上3行追加
'(必要に応じて記載モジュール名を付ける 例 call module1.比較日付)
Exit Sub
End If
End With
End If
End Sub
があります。
このコードはセル値の範囲の日付に応じて警告文を表示させて
警告文のOkを押したタイミングで
指定マクロが実行できるコードです。
マクロ:比較日付にて
シート名受付のセルK10に日付が表示され、
マクロ:マクロひな形保存にて作業ブックが保存されます。
保存後再度、作業ブックを開いたときに
シート受付のセルK10の日付が、上記設定のセルD39~E39の範囲内であれば
保存後再度、作業ブックを開いたときに警告文が非表示できる方法を教えてください。
よろしくお願いいたします。

質問者からの補足コメント

  • うーん・・・

    回答ありがとうございます。
    シート名300のセルD39には「=WORKDAY(C39,-5,休日!B3:M137)」
    シート名300のセルE39には「=WORKDAY(C39,-10,休日!B3:M137)」
    シート名300のセルC39には「=EDATE(B39,3)」
    シート名300のセルB39には「=EOMONTH(TODAY()+1,-MOD(MONTH(TODAY()+1),3)-1)」
    B39はブックの基準日となっており「現状は2022/11/30」です。
    をそれぞれ設定しております。

    No.1の回答に寄せられた補足コメントです。 補足日時:2023/01/23 11:48
  • うーん・・・

    この作業ブックはひな形(マクロ有効テンプレート)として使用しており
    色々な担当者がこのブックを使用し、受付を行っております。
    又、B39は自動で3か月毎に日付が更新され
    ブック内にあるシート(便利帳)も又、3か月毎に更新しなければなりません。
    便利帳の更新作業は、別ファイルにて行っており、ブック内にある便利帳シートは日付の確認のみとなります。
    そのために、各担当者の失念を防ぐための広告文を表示して、
    期間中に担当者が一度受付が完了すると次の3か月後までは更新する必要がありませんので
    シート名300のセルD39には「=WORKDAY(C39,-5,休日!B3:M137)」
    シート名300のセルE39には「=WORKDAY(C39,-10,休日!B3:M137)」
    の部分の数式を

      補足日時:2023/01/23 11:49
  • うーん・・・

    シート名受付のセルK10の沿った数式に変更すれば2回目からの警告文は非表示になるのでしょうか。
    詳しい説明が無く、ご迷惑をお掛けして申し訳ありません、
    解決方法を教えてください。
    よろしくお願いいたします。

      補足日時:2023/01/23 11:49
  • 文字数の関係上、何回かに分けて補足させていただきました。
    よろしくお願いいたします。

      補足日時:2023/01/23 11:50
  • うーん・・・

    例えばシート名受付のセルK10に日付を
    シート名300のところのセル(仮にC40)にコピーして
    「<>」等を使用して
    シート名300のセルD39には「=WORKDAY(C39,-5,休日!B3:M137)」
    シート名300のセルE39には「=WORKDAY(C39,-10,休日!B3:M137)」
    の数式を変更すればよいのでしょうか?
    よろしくお願いいたします。

      補足日時:2023/01/23 12:06

A 回答 (1件)

シート名受付のセルK10に日付が表示され、・・・更新と言う事かな?


VBAでなく
受付のセルK10に対して シート名300の D39 E39の値が決まるように
関数などで設定した方が良いのでは?
https://support.microsoft.com/ja-jp/office/%E6%9 …
この回答への補足あり
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
もう少し自分で考えてみます。
ありがとうございました。

お礼日時:2023/01/23 17:05

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!