指定フォルダ内にあるExcelファイルを一括でプリントアウトするRubyスクリプト
複数シート含有の40ブックを10部印刷とか、手でやると死ねる割に代替え手段がないのはどうよ。
#! ruby -Ks require 'win32ole' def getAbsolutePath filename fso = WIN32OLE.new('Scripting.FileSystemObject') return fso.GetAbsolutePathName(filename) end xl = WIN32OLE.new('Excel.Application') xl.DisplayAlerts = false xl.Visible = true fso = WIN32OLE.new('Scripting.FileSystemObject') fso.GetFolder(getAbsolutePath("files")).Files.each do |file| book = xl.Workbooks.Open(file.Path) book.Worksheets.select book.PrintOut book.Close end
同じような感じで、ページセットアップの一括変更とかも可能。各ブックから特定のシートを集めて一つのブックにしたりも便利。
Excel資料の印刷って、多重下請業界人なら基本だよね。みんな、どうやってんの?