新手问题 请教一个关于 spreadsheet 操作 excel 的问题。

rina · 发布于 2017年1月10日 · 200 次阅读
17863

背景:

gem: https://github.com/zdavatz/spreadsheet

在 A 工作表中加了一列数据验证, 引用了 B 工作表中的数据。达到的效果是可以下拉选择数据。

代码如下:

book = Spreadsheet.open(Rails.root.join('path', 'templates', "xxx1.xls"))
sheet = book.worksheet 'B'
sheet.row(2).replace( ['aa', 'bb', 'cc'] )
book.write Rails.root.join('path', 'templates', "xxx2.xls")

这几行代码的作用就是更新 B 工作表中被引用的数据。

问题:

执行之后, B 工作表中的数据是更新了, A 工作表中设置的数据验证都没有了,跟一个未设置过的工作表一样。。。

尝试过都无效的方法:

  1. 只打开 xxx1.xls 不操作, 再保存, 格式没变。
  2. 打开 xxx1.xls 后, 添加一个新的数据表, 格式也不会变化。
  3. 打开 xxx1.xls, 在A工作表中已有行的最后添加一行, 原数据格式不变化。在有数据验证的行中插入数据, 原数据验证格式没有了。。

网上关于这方面的信息比较少,文档提供的信息也比较简单。 有解决过类似问题的求分享。

暂无回复。
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册