Ruby as excel vba event handler replacement using win32ole?

I’ve seen Ruby used as a script to save all Word doc files as rtf
instead.
Can ruby be used interactively to process events that would usually be
handled in VBA in Excel for example?

Hello,
In message “ruby as excel vba event handler replacement using win32ole?”
on 06/01/13, Ammon C. [email protected]
writes:

Can ruby be used interactively to process events that would usually be
handled in VBA in Excel for example?

Does WIN32OLE_EVENT class help you?

require ‘win32ole’

def sheet_changed(arg1, arg2)
p arg1.value
end

excel = WIN32OLE.new(“Excel.Application”)
excel.visible = true
book = excel.workbooks.Add
ev = WIN32OLE_EVENT.new(book, ‘WorkbookEvents’)
ev.on_event(‘SheetChange’){|arg1, arg2|
sheet_changed(arg1, arg2)
}

book.Worksheets(1).Range(“A1”).value = 100
book.Worksheets(1).Range(“A2”).value = 200
book.Worksheets(1).Range(“B1”).value = 300

Thanks, I’ll try that! That is the kind of thing I was looking for -
event
handling in Ruby.