|
>印刷をするSheet上にcommandbuttonを作成し、
>クリックをすると、印刷枚数を教えてくれるMsgboxが表示される、
>という風にする場合は、標準モジュールではなく、
>commandbuttonに
>test()
>の内容を書き、
>Msgboxの「OK」ボタン(こちらもcommandbuttonですね)に
>set_page(sht As Worksheet)
>内容を書けば良いのですか?
実際にご自分で試してみて
わからなかったり、うまくいかなかったり
したら、その旨と一緒に投稿して下さい。
(以下のようなコードで試したけど、この行でxxxxというエラーでる等)
今度は、シートモジュールに
Private Sub CommandButton1_Click()
>> Dim シート名 As String
>> シート名 = "sheet1" '←このシート名を変えてみて下さい
>> Call set_page(Worksheets(シート名))
>> MsgBox "用紙を" & Application.ExecuteExcel4Macro("GET.DOCUMENT(50,""" & シート名 & """)") & "枚 用意してください"
>> Worksheets(シート名).PrintPreview 'プレビューにしておきましたが、
>> 'Worksheets(シート名).PrintOut ' 実際は、←ですね?
>>End Sub
>>'===================================================
>>Sub set_page(sht As Worksheet)
>> Dim lrow As Long
>> With sht
>> With .PageSetup
>> .PrintTitleRows = "$1:$3"
>> .PrintTitleColumns = ""
>> End With
>> lrow = .Cells(.Rows.Count, 1).End(xlUp).Row
>> For idx = lrow To 5 Step -1
>> .HPageBreaks.Add .Cells(idx, 1)
>> Next idx
>> End With
>>End Sub
>>
でいけると思います。
|
|