11. 印刷書式の設定
 帳票が完成するまであと少しです。というのも、帳票としては一応完成したのですが、なにしろ帳票というぐらいなので印刷をすることもあるでしょう。テンプレートを使い、あらかじめ印刷などの書式を入れておくという手もありますが、今回は新しく開いたワークブックに作成したので自分で設定してあげなければなりません。

 ここだけ手作業で・・・ってのも格好悪いので、マクロでビシっとやってしまいます。
プロシジャ「印刷設定」の作成
 7. リスト作成処理と初期処理で印刷設定とうプロシジャを呼び出しているのを覚えていますか?今度は、この部分を作ります。

Sub 印刷設定()

  '印刷の設定をします
  With Workbooks(strNewWorkbookName).Worksheets("Sheet1").PageSetup

    'プリンタの種類により設定できないプロパティがあります。
    'エラーが出たプロパティの設定は削除してください。

    '設定を変えることが多い部分
    .CenterHeader = "店舗別売上げ一覧表"
    .LeftMargin = Application.CentimetersToPoints(2)
    .RightMargin = Application.CentimetersToPoints(2)
    .TopMargin = Application.CentimetersToPoints(2)
    .BottomMargin = Application.CentimetersToPoints(2)
    .HeaderMargin = Application.CentimetersToPoints(1)
    .FooterMargin = Application.CentimetersToPoints(1)
    .PaperSize = xlPaperA4
    .Zoom = 120
    .FirstPageNumber = xlAutomatic
    .Orientation = xlLandscape

    'ここから先は必要があれば変更
    .PrintHeadings = False
    .PrintGridlines = False
    .PrintComments = xlPrintNoComments
    .CenterHorizontally = False
    .CenterVertically = False
    .Draft = False
    .Order = xlDownThenOver
    .BlackAndWhite = False
    .PrintErrors = xlPrintErrorsDisplayed
  End With

End Sub

 ここは、ほんとに難しくないです。また全部のプロパティを覚える必要もないです。作るときは基本的にコピペして、必要な部分をちょいちょいと変えてあげればOKです。

 で、印刷書式の設定は、サンプルのプロシジャで書いてあるプロパティ以外にもいくつかありまが、それらを全てを書いているときりがないので、わりとよく変えるであろう部分に絞って説明します。決して面倒なわけではないので(汗)

 各プロパティは次の通り。

 .CenterHeader = "店舗別売上げ一覧表"

 印刷時の表題を設定します。それだけです。あなたの趣味に合わせて、お好きな物をどうぞ!


 .LeftMargin = Application.CentimetersToPoints(2)
 .RightMargin = Application.CentimetersToPoints(2)
 .TopMargin = Application.CentimetersToPoints(2)
 .BottomMargin = Application.CentimetersToPoints(2)
 .HeaderMargin = Application.CentimetersToPoints(1)
 .FooterMargin = Application.CentimetersToPoints(1)

 余白の設定です。上から順番に、左、右、上、下、ヘッダ、フッタの余白です。詳しくはココをくりっく!
 Application.CentimetersToPoints( )は、単位の変換をする呪文です。余白は、基本的にはインチで指定してあげる必要があるのですが、日本じゃ普段はセンチやメートルですよね。そんなわけで、1センチと指定したい場合はApplication.CentimetersToPoints(1)という感じで指定します。もちろん、インチで2.54などを指定してもOKです。


 .PaperSize = xlPaperA4

 用紙サイズの指定です。xlPaperA4ってのは・・・・A4サイズですね。他の用紙サイズについてですが、普段よく使うのはxlPaperA3lPaperA5xlPaperB4lPaperB5くらいかな?


 .Zoom = 115

 印刷時の倍率です。パーセントで指定します。


 .FirstPageNumber = xlAutomatic

 先頭ページの番号指定です。xlAutomaticは自動(つーことは1だな・・?!)です。5ページから付けたいときはと指定します。


 .Orientation = xlLandscape

 縦型の書類か横型の書類かを指定します。xlLandscapeってのは横です。縦の時はxlPortraitと指定します。



 そのほかにもプロパティを書いておきましたが、省略します・・・(汗)
テストしてみよう!
 またまた、ここまでの内容で動かしてみよう!何度も言いますが、動かす前のワークブックの保存をお忘れ無く!絶対にです。

 テストが終わったらCSVファイルと新しいワークブックは閉じてもかまいません。保存しますか?と聞かれても、これらについては、きっぱりいいえと答えましょう。

 ※終了処理プロシジャの呼び出し(Call 終了処理)でプロシジャが無いという内容のエラーが出ますが、これは気にしないでください。ここまでの状態だと、まだ作っていないため必ず出ます。でも、それ以外のエラーが出たときは気にしてください(汗)
Copyright(C) 1999-2006 結城圭介。 All rights reserved