掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
VB−エクセルでシート複数選択時の印刷について (ID:107716)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
マクロで記録したコード①のような(すべてのシート(仮に5つ)を選択して一括でページ設定を行い印刷)処理を、VBでコード②のような感じで、Sheetsオブジェクトを関数に渡して、ページ設定を行い印刷しようとしているのですがどうもうまくいかず、印刷すると1つ目のシートだけ指定した設定で印刷され、残りのシートは何も設定されてない状態で印刷されます。 マクロのSheets(〜).Select部分をVBで、シート名ではなくインデックス的なもので一括設定するように書こうとするとどうすればいいのでしょうか? シートの数だけループさせて1シートずつ設定していくしかないのでしょうか? ご教授よろしくお願いいたします。 *コード① …マクロ Sheets(Array("s1", "s2", "s3", "s4", "5")).Select Sheets("s1").Activate With ActiveSheet.PageSetup .Orientation = xlLandscape .PaperSize = xlPaperA4 End With ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True *コード②* … VB(gl_XlsAppはグローバル) Function XlsPrintSheets(ByRef XlsSheets As excel.Sheets, ByVal Tateyoko As Integer, ByVal Saizu As Integer) As Boolean On Error GoTo errorHandler XlsPrintSheets = False XlsSheets.Select With gl_XlsApp.ActiveSheet.PageSetup .Orientation = Tateyoko '印刷向き .PaperSize = Saizu '用紙サイズ End With XlsSheets.PrintOut '印刷 XlsPrintSheets = True Exit Function errorHandler: Call ErrorHandling End Function
←解決時は質問者本人がここをチェックしてください。
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.