conundrum様 先ほどの追加です。 > 私も begin - ensure - end を使ったのですが、強制終了した場合には、 > EXCEL.exeが残ってしまいます。結局は、プログラムで終了しなければならないよ う > です。本来は、不用意に終了した場合に、実行すると理解していましたが、必ずし > も真でないと思いました。間違いでしょうか。 このことを確認するスクリプトを作成しました。実行中に強制終了した場合に、 begin - ensure - end を利用しても、EXCEL.exeが残ることは確認しました。これに は、はっきりした理由があると思いますが、如何でしょうか。 require 'win32ole' excelfile="C:\\file.xls" begin xl = WIN32OLE.new('Excel.Application') book = xl.Workbooks.Open(excelfile) sheet=book.Worksheets(1) arr= sheet.UsedRange.Rows.Columns.Value ensure book.Close xl.Quit end while 1 p arr end =========== yahata