From: agung surya Date: 2012-07-16T12:59:16+09:00 Subject: Unable to use Range method for excel Hi, Why the Range function (excel)inside my def is not recognize? Below is my code: class XLS @@excel = WIN32OLE::new("excel.Application") @@workbook = @@excel.Workbooks.Open("D:\\TestData.xlsx") @@worksheet = @@workbook.WorkSheets(2) def write(result,id) @@worksheet.Range("f3").value = "test" end @@workbook.Save @@workbook.Close @@excel.quit end When I run this code an error message displayed like below: test_write(Write::Testing): WIN32OLERuntimeError: (in OLE method `Range': ) OLE error code:0 in HRESULT error code:0x800a01a8 D://Testing/xls.rb:7:in `method_missing' D://Testing/xls.rb:7:in `write' But When I move the code (@@worksheet.Range("f3").value = "test") under " @@worksheet = @@workbook.WorkSheets(2)" it work fine. -- Posted via http://www.ruby-forum.com/.