• ベストアンサー

特定の日付の時にmsgボックスを表示するVBA

kkkkkmの回答

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率65% (1606/2443)
回答No.2

(2)を忘れてました。 Private Sub Workbook_Open() With Sheets("残圧確認表").Range("A1") If DateSerial(Year(.Value), Month(.Value) + 1, 0) = .Value Then MsgBox "【" & Year(.Value) & "年" & Month(.Value) & _ "月の最後の日なので残圧入力後に「PDFファイルに保存」ボタンを押してデータを保存して下さい。】", vbInformation ElseIf Day(.Value) = 1 Then MsgBox "【" & Year(.Value) & "年" & Month(.Value) & _ "月の最初の日なので「残圧クリア」ボタンを押してデータをクリア後に記入して下さい。】", vbInformation End If End With End Sub A1参照をやめてVBAで当日の日付を得たい場合は以下を Private Sub Workbook_Open() If DateSerial(Year(Date), Month(Date) + 1, 0) = Date Then MsgBox "【" & Year(Date) & "年" & Month(Date) & _ "月の最後の日なので残圧入力後に「PDFファイルに保存」ボタンを押してデータを保存して下さい。】", vbInformation ElseIf Day(Date) = 1 Then MsgBox "【" & Year(Date) & "年" & Month(Date) & _ "月の最初の日なので「残圧クリア」ボタンを押してデータをクリア後に記入して下さい。】", vbInformation End If End Sub

noname#247334
質問者

お礼

ありがとうございました。 非常に参考になりました!

関連するQ&A

  • エクセルVBA テキストボックス 日付表示

    エクセルVBAにて入力用フォームを開いたときに フォーム内にあるテキストボックスに今日の日付が 自動で表示されるようにしたいのですが どの様に書き込めば宜しいでしょうか? また、2008.09.05 平成20年9月5日などの 日付形式の変更はどの様に書き込むのでしょうか?

  • テキストボックスをグループ化するVBA

    エクセル上に並んだテキストボックスを、ボタンを押すことで、任意のテキストボックスをグループ化させたい。また、別のボタンでグループ化の解除が出来るようなVBAをおしえてください。 テキストボックスは、Sheet1~3まであって、ボタンもそれぞれに配置してあり、 どこのSheetのボタンを押しても、各シート、それぞれに任意の設定したテキストボックスがグループ化できるようにしたい ※各シート、グループ化するテキストボックスはおなじでなない・・・ よろしくお願いします。

  • エクセルVBA テキストボックスで日付を・・・

    皆様にはいつも大変お世話になっております。 またまた、悩むところがあり、乗せさせていただきました;; テキストボックスをVBAのフォームで作ったのですが、 そのテキストボックスの中に今日の日付を登録しておきたいのです。 テキストボックスをエクセルで開いたときに、必ず今日の日付を出しておきたいのです。 ちなみに年・月・日は違うテキストボックスになっています。 なにとぞ宜しくお願いいたします

  • VBAのメッセージボックスで%表示

    お世話になります。 VBAにて、算出されたある数字をメッセージボックスで %表示したいのですが、エクセルシートであれば、表示させる セルを決め、そのセルの表示形式を「パーセンテージ」にすれば いいのですが、メッセージボックスで表示させたいのです。 可能なのかどうか分かりませんが、ご教示頂きたく宜しく お願い申し上げます。

  • Excel VBA シートのコピー時に、シート上のコンボボックスもコピーしたい。

    こんにちは。 Excel VBAについて質問させていただきます。 やりたいことは、 シートAにボタンとコンボボックスを配置し、 コンボボックスには氏名の一覧を設定しています。 そこで、ボタンを押すとシートAをボタンとコンボボックスごと シートBという名前でコピーをしたいと思っています。 ActiveSheet.Copy Before:=Worksheets(1) でシート・ボタン・コンボボックスのコピーはうまく出来たのですが、 コンボボックスに設定していた氏名の一覧はコピーされていませんでした。 コピー先のシートのコンボボックスにもう一度氏名の一覧を 設定するしかないのでしょうか? それともシートのコピー時に何かいい方法があるのでしょうか。 宜しければアドバイスをお願い致します。 OSはWindows2000Pro Excelは2000です

  • 特定の場所に特定の名前で保存するVBA

    エクセル2003を使用しているあるファイルがあります。 コマンドボタンをクリックすると「L:」→「フォルダB」→「事務所」→「000_PERSONAL」→「01」→「休暇関係」→「休暇作業予定表」→「○○○〇年休暇作業予定表」のフォルダの場所にエクセル2003形式で保存したいと思います。 この時、「L:」→「フォルダB」→「事務所」→「000_PERSONAL」→「01」→「休暇関係」→「休暇作業予定表」までは既にフォルダを作成していますが、最後の「○○○〇年休暇作業予定表」は作成していません。 ○○○○の所には現在の年度を自動記入し、コマンドボタンを押すと自動でフォルダを作成出来る様なVBAにしたいです。※既にフォルダが作成されている場合は作成しない様にします。 保存するエクセルファイル名は、あるファイルのE1セルに「▽▽▽▽年▽▽月▽▽日」と記入されているので、「▽▽▽▽年▽▽月▽▽日休暇作業予定表」と言う名前で自動で保存したいと思います。 この様なVBAはどの様に組めば良いでしょうか?

  • 特定のセルに文字が入力されているページの印刷VBA

    エクセルVBAで質問が2つあります。 エクセルシートは改ページプレビューでページ毎の印刷範囲が見えるようになっています。 (1)コマンドボックスを押したらE4~E963又はB4~B963のセルに文字が入力されているページのみ印刷するVBAはどの様にすれば宜しいでしょうか? (2)コマンドボックスを押すとインプットボックスが表示され、その中に数字を入力したら、その入力されたページのみを印刷するVBAはどの様にすれば宜しいでしょうか?

  • エクセル VBA 日付入力?

    エクセル 2000のVBAにて簡単な 日程表を作成しています。 フォームの テキストボックス1に 10/8 を入力したら テキストボックス2には 10/15 ~ テキストボックス15には 1/21 が自動で 入力されるようにするには、どのようにすればよろしいでしょうか?

  • ユーザフォーム(VBA)で入力した内容をシートへコピーするには

    ユーザフォーム(VBA)でテキストボックスとボタンを作成しました。 このテキストボックスに入力した内容をボタンを押すことでシート1のA1セルにコピーしたいのです。こんな簡単な感じなのですが、 プログラムはどのようにしたらよいのでしょうか?教えてください。 それと、このエクセルファイルを開き、マクロを有効にするのボタンを押すと思うのですが、そのときにすでにユーザフォームが表示されているようにしたいのですが・・・どうすればいいのでしょうか? ※できたらでよいのですが、もう一つボタンを作成し『クリア』ボタンということで、テキストボックスに入力した内容だけをクリアさせるボタンも作ろうとおもうのですが、それはどうしたらよいのでしょうか? 困っています。教えてください。

  • エクセルVBA チェックボックスについて

    VBA初心者です。 あるシート(セル)に作った入力用チェックボックスにチェック(TRUE)を入れたときに、別シートの特定の位置に楕円を引きたいのですが、どのようなやり方があるでしょうか。 使い方は入力用シートと印刷用シートを分けて、入力用シートのチェックボックスの状態で印刷用シートの特定のセルに選択したことがわかるように楕円をつけたいというものです。 よろしくお願いします。