何年にもわたって蓄積されたワークブックがたくさんある場合は、それぞれからいくつかのワークシートを印刷する必要があるかもしれません。たとえば、過去10年間の会社の各部門のワークブックを含むフォルダーがあるとします。会社に8つの部門がある場合、フォルダーに80のワークブックがあることを意味します。ここで、(各ワークブックの2番目と3番目のワークシートから)第2四半期と第3四半期の図を印刷する必要がある場合は、問題が発生し始めます。各ワークブックを読み込んでから、選択したシートを印刷すると、非常に時間がかかる場合があります。

より簡単な方法は、印刷を行うマクロを作成することです。

次のマクロは、ディレクトリパスの入力を求めることから始まります。パスを指定すると、マクロはディレクトリ内の各ブックファイルの読み込みを開始し、それぞれから2番目と3番目のワークシートを印刷します。 (マクロは、ディレクトリ内のブックファイルの種類を実際には気にしません。XLS、XLSX、またはXLSMファイルの場合があります。すべてをロードする必要があります。)印刷されると、ブックは閉じられます。

Public Sub PrintWorkbooks()

Dim sCurFile As String     Dim sPath As String

'Get the path     sPath = InputBox("Starting path?", "PrintWorkbooks")

If sPath <> "" Then         On Error Resume Next         Application.ScreenUpdating = False         If Right(sPath, 1) <> "\" Then             sPath = sPath & "\"

End If         sCurFile = Dir(sPath & ".xls", vbNormal)

Do While Len(sCurFile) <> 0             Workbooks.Open sPath & sCurFile, , True             With Workbooks(sCurFile)

.Worksheets(2).PrintOut                 .Worksheets(3).PrintOut                 .Close SaveChanges:=False             End With             sCurFile = Dir             DoEvents         Loop         Application.ScreenUpdating = True         On Error GoTo 0     End If End Sub

明らかに、ディレクトリにかなりの数のワークブックがある場合、印刷にはかなりの時間がかかる可能性があります。他に何もすることがない時間を見つけて、マクロの実行を開始することをお勧めします。

注:

このページ(または_ExcelTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_ExcelTips_は、費用効果の高いMicrosoftExcelトレーニングのソースです。

このヒント(11316)は、Microsoft Excel 2007、2010、2013、2016、2019、およびOffice 365のExcelに適用されます。Excelの古いメニューインターフェイス用のこのヒントのバージョンは、次の場所にあります。