- ベストアンサー
Excelで各シートの同ページを指定をして印刷したい
例えば、全てのシートに関して1ページ目だけ印刷したい、という場合ですが シートをグループ化してページ指定を1ページにすると グループ化されたシートのタグが一番上のものに関してしか印刷されませんよね。 全シートに関して同ページを印刷するには、やはりマクロなど使わなければできないのでしょうか・・・。 教えてください(;;)
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>シート30枚のファイルが無数にあるので それは、大変ですね。以下はVBAでのサンプルコードです。 選択したシートの指定ページを印刷します。 ・複数ページを指定できます ・ページ範囲で指定できます 取り合えずで作成したものなので、細かな例外処理はやってません。 使い方を間違えると裏紙の山ができるかも(--;) 使用する人が気をつけるか、ご自分でカスタマイズして下さい。 Sub ページ指定印刷() Dim CurrentSh As Worksheet Dim FmPg%, ToPg% Dim i As Long Dim strPageNumber As String, stMes As String Dim aryPageNumber stMes = _ "・複数ページを指定するにはカンマで区切ります (例)1,2,3" & vbCrLf & _ "・連続するページを指定するには-(ハイフン)でつなぎます (例)2-5" strPageNumber = InputBox(stMes, "印刷するページを入力して下さい") If IsEmpty(strPageNumber) Then Exit Sub End If aryPageNumber = Split(strPageNumber, ",") Application.ScreenUpdating = True With ActiveWindow For Each CurrentSh In .SelectedSheets For i = 0 To UBound(aryPageNumber) FmPg = Val(aryPageNumber(i)) If InStr(aryPageNumber(i), "-") > 0 Then ToPg = Mid(aryPageNumber(i), InStr(aryPageNumber(i), "-") + 1) Else ToPg = FmPg End If On Error Resume Next CurrentSh.PrintOut From:=FmPg, To:=ToPg On Error GoTo 0 Next i Next CurrentSh End With End Sub
その他の回答 (2)
- si811
- ベストアンサー率33% (16/48)
全てのシート=ブック全体の1ページ目だけなのでしょうか? それでしたら、印刷・・・から印刷対象を「ブック全体」にして、印刷範囲をページ指定で開始1、終了1にすれば可能ではないのでしょうか。 もし任意のシートだとしても、Ctrlキーを押しながらシートを選択してから印刷範囲を同様の手順ですれば可能なのではないでしょうか。 改ページプレビューで制限することも可能ですが、簡単にやるなら上記の方法が良いのかと思います。 的外れでしたらごめんなさい。
補足
書き方が悪くて申し訳ありません。。 任意のシートの決まったページ (そのページ数は各シート同じです) をそれぞれ印刷したいのです。 Ctrlキーを押しながら・・の方法では、質問に書いたように ひとつのシートの分しか印刷されないのです。
- KenKen_SP
- ベストアンサー率62% (785/1258)
印刷前に各シートの印刷範囲を設定しておけばよいかと。 自動でやるなら、VBAでやるしかありません。
お礼
回答ありがとうございます。 シート30枚のファイルが無数にあるので 1ファイルごと一気にP.Oできないかと思ったのですが。 やはりVBAじゃないと無理ですよね(-_-;)
お礼
ありがとうございます。問題なくPOできました。 カスタマイズ・・できるように勉強します^^;