• 締切済み

エクセル2003にて、シートのセル上にあるdate関数の日付の部分を、

エクセル2003にて、シートのセル上にあるdate関数の日付の部分を、年月日~年月日の日付を指定して、指定した日付ごとに日付が変更された状態で指定した日付分のシート枚数を印刷をしたいと思っていますが、上手く実行できません。※現状は、PCの日付を変更して印刷をしています。 書いたマクロは下記(下矢印)になりますが、修正箇所や良い方法がありましたら、ご伝授宜しくお願い致します。 Sub Test() Dim myPrompt_s As String, myTitle_s As String Dim myPrompt_e As String, myTitle_e As String Dim startDay As Date, endDay As Date, I As Integer On Error GoTo ExitMe '---抽出開始~終了期間を取得します myPrompt_s = "何月何日からですか?" myTitle_s = "印刷開始日付" myPrompt_e = "何月何日までですか?" myTitle_e = "印刷終了日付" startDay = Format(InputBox(myPrompt_s, myTitle_s), "yyyy/m/d") '開始 endDay = Format(InputBox(myPrompt_e, myTitle_e), "yyyy/m/d") '終了 For I = 0 To endDay - startDay Range("C4").Value = Format(startDay + I, "yyyy/m/d") '---印刷します ActiveSheets.PrintOut Next I ExitMe: End Sub

みんなの回答

  • k_kishi
  • ベストアンサー率36% (34/93)
回答No.3

k_kishiです。 他にも方法はいろいろありますのでお問いあわせください。 以上

  • k_kishi
  • ベストアンサー率36% (34/93)
回答No.2

ヘッダー、フッターを使うと簡単にできると思います。 以上

kazu491223
質問者

お礼

回答ありがとうございます。 セル内の条件指定を変更して、マクロで条件指定した内容に変更をしたら無事印刷出来るようになりました。 また何かありましたらご教授頂けると幸いです。 今後とも宜しくお願い致します。

  • mt2008
  • ベストアンサー率52% (885/1701)
回答No.1

厳密に言えば他にも修正した方が良い所もありますが、とりあえず、 ActiveSheets.PrintOut ↓ ActiveWindow.SelectedSheets.PrintOut で、印刷出来そうな気がします。

kazu491223
質問者

お礼

回答ありがとうございます。 色々と修正を加えて無事出来るようになりました。 また何かありましたらご教授頂けると幸いです。 今後とも宜しくお願い致します。

関連するQ&A

専門家に質問してみよう