- 浏览: 215675 次
- 性别:
- 来自: 绍兴
文章分类
最新评论
-
112703013:
你好, 想问个问题 就是我这边上传一个zip文件 大概有100 ...
rails文件上传下载和删除 . -
chen_miao:
qplovechinese 写道 很好!
3q
simple jQuery date-picker plugin 使用 -
qplovechinese:
很好!
simple jQuery date-picker plugin 使用
使用ruby来操作excel文件首先需要在脚本里包含以下语句
require 'win32ole'
把win32ole包含进来后,就可以通过和windows下的excel api进行交互来对excel文件进行读写了.
打开excel文件,对其中的sheet进行访问:
excel = WIN32OLE::new('excel.Application')
workbook = excel.Workbooks.Open('c:\examples\spreadsheet.xls')
worksheet = workbook.Worksheets(1) #定位到第一个sheet
worksheet.Select
读取数据:
worksheet.Range('a12')['Value'] #读取a12中的数据
data = worksheet.Range('a1:c12')['Value'] #将数据读入到一个二维表
找到第一处a列的值为空值
line = 1
while worksheet.Range("a#{line}")['Value']
line=line+1
end #line的值为第一处空白行的行数
将第一列的值读入到一个数组中
line = '1'
data = []
while worksheet.Range("a#{line}")['Value']
data << worksheet.Range("a#{line}:d#{line}")['Value']
line.succ!
end
将数据写入到excel表格中
worksheet.Range('e2')['Value'] = Time.now.strftime '%d/%m/%Y' #单个值
worksheet.Range('a5:c5')['Value'] = ['Test', '25', 'result'] #将一个数组写入
调用宏定义
excel.Run('SortByNumber')
设置背景色
worksheet.Range('a3:f5').Interior['ColorIndex'] = 36 #pale yellow
# 将背景色恢复成无色
worksheet.Range('a3:f5').Interior['ColorIndex'] = -4142 # XlColorIndexNone constant
# 使用Excel constant 将背景色恢复成无色
worksheet.Range('a3:f5').Interior['ColorIndex'] = ExcelConst::XlColorIndexNone
保存
workbook.Close(1)
# 或
workbook.SaveAs 'myfile.xls'
# 默认路径是系统定义的"我的文档"
结束会话
excel.Quit
一些相对完整的代码片段
创建一个excel文件并保存
require 'win32ole'
excel = WIN32OLE.new("excel.application")
excel.visible = true # in case you want to see what happens
workbook = excel.workbooks.add
workbook.saveas('c:\examples\spreadsheet1.xls')
workbook.close
操作excel文件的几个重要元素
Excel => workbook => worksheet => range(cell)
我理解的是excel为类名,workbook为一个具体的(excel文件)实例,创建好实例后,worksheet是实例(workbook,工作簿)中的一个工作表,然后可
以对工作表中的每个单元格(range(cell))进行具体的读写------------------按照这样操作肯定没有错,不过下面的这些语句又让我有些疑惑
excel.workbooks("Mappe1").worksheets("Tabelle1").range("a1").value #读取名为Mappe1的excel文件中工作表名为Tabelle1的a1单元格中的值
excel.worksheets("Tabelle1").range("a1").value #作用同第一条语句
excel.activeworkbook.activesheet.range("a1").value #作用同第一条语句
excel.activesheet.range("a1").value #作用同第一条语句
excel.range("a1").value #作用同第一条语句
excel可以直接操作所有的属性,默认为当前活跃的工作簿/工作表
对单元格的操作:
某个单元格: sheet.range("a1")
a1到c3的值: sheet.range("a1", "c3") 或 sheet.range("a1:c3")
第一列: sheet.range("a:a")
第三行: sheet.range("3:3")
获得单元格的值:
range.text #读取值,返回为字符串格式,如果单元格内为数字,有可能会被截断小数点后的位数
sheet.range("a1").text
range.value #读取值,数字不会截断
sheet.range("a1").value
对单元格设置值
sheet.range("a1").value = 1.2345
或
sheet.range("a1").value = '1.2345'
迭代访问:
sheet.range("a1:a10").each{|cell|puts cell.value}
如果范围是一个矩形,则会按行循环迭代访问
sheet.range("a1:b5").each{|cell|puts cell.value}
block迭代,并打印出每行的第一个值
sheet.range("b3:c7").rows.each{|r|puts r.cells(1,1).value}
发表评论
-
Tekla 导入cad 模型
2015-07-31 15:19 8620CAD二维或三维 导入 tekla 两种方法 1 输入 ... -
关于“显示器驱动程序 AMD driver已停止响应 并且已成功恢复”错误的应对方法
2015-04-29 12:11 3449FROM: http://blog.sina.com.cn ... -
CAD 天正正密码保护炸开方法
2015-04-29 12:07 787CAD图被天正密码保护设置了密码之后无法编辑,无法炸开,很多 ... -
(Xsteel软件) 高强螺栓长度计算
2014-02-27 09:01 2797高强螺栓连接必须严格 ... -
TeklaStructures高版本保存低版本的方法
2014-02-27 08:56 3584若用XsteeL13.0版本打开的模型想转换用XsteeL10 ... -
win7资源管理器总是停止工作
2014-01-20 10:38 2223你安装的某些程序或者插件运行错误导致的,Vista之后,微软对 ... -
Acer 4745系,重装后快捷方式无图标及触控板功能失效
2013-04-02 11:58 1397Acer 重装系统后,FN 快捷图标消失: 解决 ... -
require,include,load,extend的用途和区别
2013-03-01 22:47 980这四个方法还是很好玩很有用,也是比较容易混的。 ... -
ruby 标准类型总结
2013-02-01 16:45 1243一、数字 Ruby支持整数 ... -
RMagick 简介
2013-01-18 20:38 1414RMagick 是一个将 Ruby 语言绑定到 ImageM ... -
ARP欺骗功能
2013-01-12 22:47 1158一、设置前准备 当使用了防止ARP欺骗功能(IP和 ... -
淘宝开源编辑器KISSY Editor
2013-01-04 16:46 2379KISSY Editor 是开源项目 KISSY ... -
Rails创建定时任务
2012-12-10 10:21 1849Task & Rexcel 最终生成的报 ... -
Ruby on Rails页面缓存 实践
2012-12-05 11:02 1075三种方式 Page Caching, Action ... -
rails缓存学习
2012-11-27 16:38 1892FORM:http://kenbeit.com/tag/ ... -
Ruby on Rails 简单页面缓存
2012-11-16 17:28 1233三种方式 Page Caching, Action Ca ... -
Ruby写入Excel文件 插件方法
2012-11-01 16:21 1529spreadsheet插件(主要是excel生成写入数 ... -
Ruby on Rails的session和session存储方案
2012-10-18 17:42 1288session:页面间的信息保存手段。使用:赋值 ses ... -
Ruby程序打包成可执行文件的工具 - RubyScript2Exe
2012-09-19 21:28 2280RubyScript2Exe能够将你的Ruby应用程序转成一个 ... -
rails中实现kindeditor中的图片上传
2012-09-14 16:10 1656FROM: http://blog.sina.co ...
相关推荐
Ruby库如`roo`可以方便地读取Excel文件,而`Nokogiri`则可以用来创建和操作XML文档。 首先,我们需要了解`roo`库。`roo`是Ruby中用于读取不同类型的电子表格文件(如Excel、OpenOffice、Google Sheets)的库。安装`...
在Ruby中操作Excel文件主要是通过`win32ole`库来实现的,这个库允许Ruby程序与Windows操作系统中的Office应用程序进行交互,如Microsoft Excel。以下是关于如何使用Ruby操作Excel的详细步骤和知识点: 1. **引入win...
由于想操作excel文件,对其的数据进行修改,但是因为没有office2003(价格原因)所以无法直接修改。所以调查了一下,有很多日本人做好的gem(spreadsheet.gem)可以直接拿来用。也就可以不安装office就可以对excel...
### 使用Ruby操作Excel的基础知识点 #### 1. 引入win32ole库 在Ruby中操作Excel,通常会用到`win32ole`库。这个库允许Ruby与Windows下的OLE(Object Linking and Embedding)对象进行交互,其中包括了Microsoft ...
描述虽然简洁,但我们可以推断出它可能是指如何在Ruby中利用库来读取、写入或操作Excel文件。这通常涉及到几个关键的库,如`Spreadsheet`、`Win32OLE`和`ruby-ole`。 1. **Spreadsheet**: `Spreadsheet` 是一个纯...
通过JRuby,我们可以调用POI的API,用Ruby代码来操作Excel文件,例如读取数据、修改内容、解析公式等。 以下是使用JRuby和Apache POI读取Excel文件的基本步骤: 1. 首先,需要在项目中引入Apache POI的Java库,这...
C#操作Excel所必须的DLL库文件。可以在VS2010下使用。编程语言为C#.具体包含一下三个文件: Interop.Excel.dll Interop.Microsoft.Office.Core.dll Interop.VBIDE.dll
在Ruby中,可以使用如 Roo 这样的库来读取和操作Excel文件。Roo库支持多种文件格式,包括XLS、XLSX和CSV,使得测试人员能够方便地导入和导出测试数据。 例如,我们可以创建一个Excel文件,其中包含测试场景的详细...
Excel的对象模型是Microsoft Office提供的用于访问和操作Excel文件的一种方式。通过该模型,开发人员可以轻松地读取、写入或修改Excel文件中的数据。 #### Excel对象模型的四大部分 Excel对象模型主要包括以下四个...
xlrd 模块可以读取 Excel 文件,xlwt 模块可以写入 Excel 文件,xlutils 模块提供了一些实用的函数来操作 Excel 文件。 Python 对 Excel 操作的优点: * 可以快速读取和写入 Excel 文件 * 可以对 Excel 文件进行...
7. **文件操作**:讲解如何使用Ruby处理Excel文件,如使用roo或axlsx库来读写Excel数据,进行数据的提取和分析。 8. **实践项目**:通过处理“公示名单.xls”,引导读者完成一个实际的小项目,提升编程技能。 以上...
xlrd 模块可以读取 Excel 文件,xlwt 模块可以写入 Excel 文件,xlutils 模块可以对 Excel 文件进行merge 和 split 操作。另外还可以使用 Tcl tcom 包对 Excel 操作。 Python 语法入门 在 Python 中,变量赋值可以...
标题中的“代码及结果”指的是将某种编程语言(在这种情况下是Ruby)编写的代码转换成或与Excel文件相关的操作。描述进一步明确了这是关于Ruby代码及其执行后产生的结果,特别是涉及到处理Excel文件。标签“excel”...
通过本文档的学习,读者可以了解到Python作为一种强大的编程语言,在处理Excel文件方面提供了多种便捷的方法。无论是简单的读写操作还是复杂的Excel文件处理需求,Python都能轻松应对。借助于xlrd、xlwt、xlutils...
Axlsx是一个用于生成符合Open XML标准的Excel(xlsx)文件的Ruby库,尽管它的主要目的是生成Excel文件,但通过一些定制,也可以创建Word兼容的DOCX文件。安装Axlsx gem: ```bash gem install axlsx ``` 接下来,...
当我们谈论“读取Excel”时,通常是指使用编程语言或者特定的库来访问和处理Excel文件中的数据。这篇内容将深入探讨如何在不同的编程环境中读取Excel文件。 1. Python中的Excel读取: Python拥有多个强大的库,如`...
- **runexcel.rb**:同样,这个文件可能用于操作Excel,利用了Ruby的Excel处理库。 4. **实际应用**: - **数据清洗**:在实际工作中,电话号码可能包含空值、错误格式或重复项,因此数据清洗是提取前的重要步骤...
Ruby-ActiveImporter是一个强大的工具,专门设计用于将电子表格(如Excel、CSV)中的数据高效地导入到使用ORM(对象关系映射)框架,特别是类似于ActiveRecord的框架中。这个库简化了数据处理过程,使得开发者可以...
pandas的`read_excel`函数可以直接将Excel文件转换为DataFrame对象,方便后续的数据操作。 ```python import pandas as pd df = pd.read_excel('example.xlsx') print(df) ``` 4. **JavaScript中的xlsx库**:...