• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:指定する曜日の時に特定のエクセルファイルを印刷)

エクセルファイルを指定曜日に印刷するVBAの作成方法について

このQ&Aのポイント
  • 指定する曜日の時に特定のエクセルファイルを自動で印刷するVBAの作成方法を教えてください。
  • エクセルファイルにあるボタンを押すと、毎日印刷シートと指定した曜日の印刷シートのみが印刷されるVBAの作成方法を教えてください。
  • 工程分析.xlsファイルのボタンを押すと、毎日印刷シートと当日の曜日の印刷シートのみが印刷されるVBAの作成方法を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • kkkkkm
  • ベストアンサー率66% (1719/2589)
回答No.2

以下でいかがでしょう。 Sub 印刷() Dim PrintSheetName As String If MsgBox("実行する場合はOK、間違ってこのボタンをクリックした場合はキャンセルをクリックしてください。(日付確認後、印刷のこと。)", vbOKCancel) = vbCancel Then Exit Sub End If ' A印刷 ChDir "L:\フォルダB\X\新規" Workbooks.Open Filename:="L:\フォルダB\X\新規\記録表\工程分析.xls" Sheets("毎日印刷").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True PrintSheetName = Format(Range("K1").Value, "aaaa") & "印刷" Sheets(PrintSheetName).Select ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True ActiveWorkbook.Save ActiveWindow.Close End Sub

noname#247334
質問者

お礼

この度は素早い回答をして頂き誠にありがとうございます。 解決しました。 感謝しています。

その他の回答 (1)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.1

Select Caseで行う方法もあるけど、曜日でシートを選ぶだけならFormat関数使うのがベストでしょう。 'A印刷 ChDir "L:\フォルダB\X\新規" Workbooks.Open Filename:="L:\フォルダB\X\新規\記録表\工程分析.xls" Sheets("毎日印刷").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True Sheets(Format(Range("K1"),"aaaa") & "印刷").Select ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True  ActiveWorkbook.Save ActiveWindow.Close

noname#247334
質問者

お礼

この度は素早い回答して頂き誠にありがとうございました。 非常に参考になりました。