| 
    
     |  | こんにちは。かみちゃん です。 
 >>>何ページということですか?
 >何ページという事です。
 >任意に今日は4ページまで、今日は3ページまでと、
 >印刷するときによって、ページを変えたいのです。
 
 印刷開始ページは、必ず1ページからとするのであれば、以下のような感じになります。
 ポイントは、InputBoxなのですが、いろいろエラー処理を入れてみたので、ちょっと長くなりました。
 
 Option Explicit
 Sub Macro1()
 Dim TotalPage As Integer
 Dim ToPage As String
 
 'アクティブシートの総ページ数を取得
 TotalPage = (ActiveSheet.HPageBreaks.Count + 1) * (ActiveSheet.VPageBreaks.Count + 1)
 '印刷終了ページの指定(エラー処理あり)
 Do
 ToPage = InputBox("終了ページは?", , TotalPage)
 '何も入力しなかった場合、または、キャンセルを押した場合は、処理終了
 If ToPage = "" Then Exit Sub
 If IsNumeric(ToPage) Then
 '終了ページは、1以上の整数(小数点は不可)
 If Val(ToPage) >= 1 And Val(ToPage) - Int(Val(ToPage)) = 0 Then
 Exit Do
 Else
 MsgBox "終了ページは、1以上の整数を入力してください。"
 End If
 Else
 MsgBox "数字で入力してください。"
 End If
 Loop
 '確認メッセージ
 MsgBox "1ページから" & Val(ToPage) & "ページを印刷します"
 '印刷実行
 ActiveSheet.PrintOut From:=1, To:=Val(ToPage)
 End Sub
 
 |  |