问题标签 [spreadsheet-gem]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
4357 浏览

ruby-on-rails - Ruby电子表格宝石,我怎样才能使数字居中对齐

我正在使用http://spreadsheet.rubyforge.org生成电子表格,但遇到了一些问题。我正在打开一个现有的工作簿并向其中添加数据。

我已经设法让数字格式在某种程度上起作用,至少 excel 将此数据视为数字,但是(非常不像 excel)客户希望数字在中心对齐:(

我当前的代码如下所示:

也许有点牵强,但想知道是否有人可以提供帮助?

  • 电子表格目前不修改格式。这尤其意味着,如果将单元格的值设置为日期,则只有在更改之前其格式设置正确时,才能将其读取为日期。

为 Trevoke 编辑

感谢您提供帮助。我试过你的代码,它工作正常。我想不同之处在于我正在编辑现有的电子表格,在这种情况下格式被忽略。试试这个:

0 投票
3 回答
1479 浏览

ruby - Ruby 1.9.2 上的电子表格 Gem 速度慢得难以忍受

我正在为我的数据团队构建一个 Excel 解析器,但在使用电子表格 0.6.5.1 gem 时遇到了一些问题。

在 Ruby 1.9.2 中,Spreadsheet.open 方法的使用会立即跳转到 700m-1.3g 的内存,并无限期地挂在那里,即使在小型(1 张,300 行)工作簿上也是如此。同时,在 Ruby 1.8.7 中,Spreadsheet.open 快速且完美无缺。

现在我在 irb 中做了很多工作,这样我就可以控制我正在使用的环境(rubygems/spreadsheet gem),但我最终需要将此解析器移动到 Rails 3 项目中,所以解决 1.8.7 不是一个选项。

没有关于此问题的文档,甚至没有其他人遇到此问题的证据。每当我中止 Spreadsheet.open 调用时,每次都会留下这个错误溢出:

gems/spreadsheet-0.6.5.1/lib/spreadsheet/worksheet.rb:181:in 'call'

我想避免猴子修补这个,或者直接潜入 gem 来破解一个分辨率。有没有其他人遇到过这个问题?或者类似的东西?

0 投票
2 回答
4095 浏览

ruby - 如何关闭红宝石宝石“电子表格”中的文件?

下面的代码就像我第一次运行它时一样工作:

当我再次运行它时,我会收到更多消息,例如:

这向我表明存在以下问题:1. excel 电子表格的关闭或 2. 写回我打开的同一个电子表格。

  1. ruby gem 电子表格文档中没有关于关闭电子表格的内容。示例以上面的“book.write”语句结尾,如果有的话。我在这里和其他地方的搜索结果没有重新关闭电子表格中的 xls 文件。
  2. 电子表格文档建议您可以写回同一个文件,但建议您不应该这样做。这是这里的问题吗?如果是这样,我要写一个临时的 wks 然后重命名它吗?
0 投票
1 回答
3254 浏览

excel - 导出 Excel(xls 或 xlsx 或 CSV)表,并在列上应用验证/规则

我想导出模板 Excel 工作表,以便用户可以填写并上传他们的数据。

在导出的工作表中,我想对列值进行一些验证规则。因此,用户只能根据应用的规则填充值,该值只能是数字或 4-5 个唯一值(例如颜色 - 仅限蓝色、绿色、黑色)。

到目前为止,我已经浏览了 Roo 和 Spreadsheet gem 的文档,以找到任何方法来定义列上的规则,但没有找到任何东西。现在只是在用户上传时验证工作表,如果插入无效值则显示错误。

寻找类似的解决方案 -如何在使用 POI 生成的 excel 表中创建相关下拉列表?

欢迎任何帮助。

0 投票
2 回答
2025 浏览

ruby - 如何使用 Ruby Spreadsheet gem 将数组中的数据添加到单元格中

我有一个数组数组,例如:

在哪里:

我有一个文件要修改。我知道如何将数组添加为一行,但我需要帮助将每个数组插入@@ar_data为列。我找到Row要插入数据的,然后我想arr_1在单元格中插入(next_empty_row, B),然后arr_2(next_empty_row, C),等等。请指教。填充数据的行数是每个数组的大小。arr_1, arr_2,arr_3大小为3

0 投票
1 回答
1037 浏览

ruby-on-rails - 通过电子表格 gem 使用自定义颜色

我需要使用自定义colorpattern_fg_color十六进制:0x00adb1,RGB:0,173,177)。我遵循了这里的建议,但对我来说没有用(我在另一个基于电子表格 gem 的库中使用它):

测试示例:

我收到以下错误:

未知颜色“企业”

任何建议将不胜感激。

0 投票
1 回答
974 浏览

ruby-on-rails - 将电子表格 xls 文件中的单个工作表拆分为 csv 文件

我有一个每日下载的(使用 mechanize &when/sidekiq+redis).xls 文件,其中包含两个工作表,并希望将它们拆分为两个文件,每个文件都有一张。我尝试了很多方法都无济于事(以随机delete方法折腾,希望能奏效,不):

开始思考“电子表格 gem 是否像数组一样对待工作簿——我可以使用数组方法吗?”...然后举手。

主要的电子表格宝石资源:

0 投票
2 回答
991 浏览

ruby - 使用“电子表格”gem 按名称访问单元格

如果我有一个sheet类型为 的变量,Spreadsheet::Excel::Worksheet现在我们可以B2通过以下方式访问:

在 LibreOffice(我确定是 Excel)中,我可以在“名称框”中为该单元格指定一个名称。见下图,我给 B2 起了一个名字“CUSTOM_NAME”。

使用

不是使用行/列坐标访问该单元格的内容,而是可以通过名称访问它吗?如果单元更改位置,这将更容易适应未来的变化。我想做类似的事情:

我正在查看在此处找到的文档,但无法找到我要查找的内容。

如果 gem 已经不允许它,我将如何自己实现它?

0 投票
1 回答
125 浏览

ruby - Spreadsheet::Workbook.new 创建 .xls 而不是 xlsx

我想生成 xlsx file 但电子表格生成 xls
如何使用相同的 gem 生成 xlsx 文件?

0 投票
1 回答
365 浏览

ruby - Ruby Spreadsheet gem 格式单元格停止在第三张表上工作

我正在尝试为表格设置背景颜色。它适用于此代码。但是,如果我的工作簿有 3 张以上的工作表,则 set_format 将无法在第三张工作表行(8)第 4 个单元格上工作。从那里开始,所有格式都将不起作用。生成的每个 xls 文件都有相同的结果。它停在那个特定的单元格上,工作簿的所有其余部分都没有更多样式了。有什么建议吗?

请看附图。

第 4 个单元格缺失格式

任何建议表示赞赏,我正在使用电子表格(1.2.6),RoR6。