Ruby and Windows Automation
Revision as of 09:48, 12 March 2010 by PeterHarding (talk | contribs)
References
Functions
Miscellaneous function in the API...
excel = WIN32OLE.new('Excel.Application')
book = excel.Workbooks.Add()
sheet = book.Worksheets(1)
excel.Visible = true
range = sheet.Range('A1').Resize(data.size, data.first.size)
range.Value = data
sheet.Rows(1).AutoFilter()
iTunes
require 'win32ole'
app = WIN32OLE.new('iTunes.Application')
data = []
app.LibraryPlaylist.Tracks.each do |track|
if not track.Podcast
data << [track.Artist, track.Year, track.Album, track.Name]
end
end
data.sort!
data.insert(0, ['ARTIST', 'YEAR', 'ALBUM', 'NAME'])
MSDN Links
Constants
Constants
From: http://ruby-doc.org/core/classes/WIN32OLE.html
module EXCEL_CONST
end
excel = WIN32OLE.new('Excel.Application')
WIN32OLE.const_load(excel, EXCEL_CONST)
puts EXCEL_CONST::XlTop # => -4160
puts EXCEL_CONST::CONSTANTS['_xlDialogChartSourceData'] # => 541
WIN32OLE.const_load(excel)
puts WIN32OLE::XlTop # => -4160
module MSO
end
WIN32OLE.const_load('Microsoft Office 9.0 Object Library', MSO)
puts MSO::MsoLineSingle # => 1
WIN32OLE.new('Excel.Application') # => Excel OLE Automation WIN32OLE object.
WIN32OLE.new('{00024500-0000-0000-C000-000000000046}') # => Excel OLE Automation WIN32OLE object.