1 #require "spreadsheet"
2 require "jcode"
3 $KCODE='gbk'
4
5 #处理excel
6 require "win32ole"
7 excel=WIN32OLE.new('excel.Application')
8 book=excel.Workbooks.open("E:\\与大奖有约\\22选5_0325.xls")
9 sheet=book.Worksheets()
sheet.select
#excel.visible=true
#读取数据
puts sheet.Range('a12')['value'].to_s
puts sheet.Range('b12')['value']
#读入二维表
data=sheet.Range("a1:C12")['VALUE']
p data
#找到a列 第一个空值
line=
while sheet.Range("a#{line}")['value']!=nil
line=line+
end
puts line-
#puts sheet.Range("a#{line}")['value']
#将第一列的值 读入到 一个数组中
line=''
data=[]
while sheet.Range("a#{line}")['value']
data<<sheet.Range("a#{line}:f#{line}")['value']
line.succ!
end
p data
#将数据写入到excel表格中
sheet.Range('h2').value=Time.now.strftime '%/%m/%y'#写入单个值——日期
sheet.range('h1:j1').value=['测试','','result']#写入一个数组
#运行已经定义的宏"Macro2"
excel.run('Macro2')
#设置背景色
sheet.range('a3:f5').interior['ColorIndex']=#设置成暗黄色
sheet.range('a3:f3').interior['colorindex']=-#将背景色设置成无色
#-4142是常量
book.Close()#保存 工作簿
excel.Quit#结束会话
1 require "jcode"
2 $KCODE='gbk'
3 require "win32ole"
4 excel=WIN32OLE.new("excel.Application")
5 excel.visible=true
6 book1=excel.workbooks.add
7 sheet1=book1.worksheets()
8 sheet1.select
9 sheet1.range('a1').value=
sheet1.range('a2').value='这是一个中文字符串'
book1.saveas("e:\\1.xls")
book1.close
excel.quit
1 require "jcode"
2 $KCODE='gbk'
3
4 require "win32ole"
5 excel=WIN32OLE.new('excel.application')
6
7 #book1=excel.workbooks.add#新建一个待操作的文件
8 #book1.saveas 'e:\\book1.xls'#保存新文件
9
#打开待操作文件
book1=excel.Workbooks.open('e:\\book1.xls')
#sheet1=book1.open('sheet1')
#sheet1.select
#下面的操作都是一样的结果
book1.worksheets('sheet1').range('a1').value='第一个'
excel.worksheets('sheet1').range('a2').value='第二个'
excel.activeworkbook.activesheet.range('a3').value='第三个'
excel.activesheet.range('a4').value='第四个'
excel.worksheets('sheet3').select
excel.range('a5:a1').value="第五个"
#excel可以操作所有的 属性,默认为“当前工作簿/工作表"
#book1.close
excel.quit
1 require "jcode"
2 $KCODE='gbk'
3 #对单元格的操作
4 require "win32ole"
5 excel=WIN32OLE.new 'excel.application'
6 book1=excel.Workbooks.open('e:\\book1.xls')
7
8 sheet1=book1.Worksheets()#第一个worksheet表
9 p sheet1.range('a1').text
p sheet1.range('a1','c3').value
#puts sheet1.range('a:a').value
#获取单元格的值
puts sheet1.range('a2').text
puts sheet1.range('a2').value
#对单元格设置值
sheet1.range('h1').value=1.23456
sheet1.range('h2').value='1.23456'
a=sheet1.range('h1').value
b=sheet1.range('h2').value
puts "a等于b" if a==b
#迭代访问
sheet1.range('a1:a10').each{|cell| puts cell.value
cell.value=''
}
#使用cell()
sheet1.range("b3:c7").rows.each{
|r|
r.cells(,).value='dd'
}
book1.close
excel.quit
require "jcode"
$KCODE='gbk'
require "win32ole"
excel=WIN32OLE.new('excel.application')
excel.quit
以上就是ruby操作excel的几段代码的详细内容,更多关于ruby操作excel的几段代码的资料请关注九品源码其它相关文章!