Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby:使用默认值在Excel中创建下拉列表_Ruby_Excel - Fatal编程技术网

Ruby:使用默认值在Excel中创建下拉列表

Ruby:使用默认值在Excel中创建下拉列表,ruby,excel,Ruby,Excel,我需要用Ruby创建一个Excel文档。我的要求是:多张工作表、一些基本格式、能够在文档中的单元格之间创建超链接以及创建下拉列表。我发现了两个宝石:axlsx和writeexcel,它们似乎提供了我想要的几乎所有东西。一个错误是创建的下拉列表的默认值。我运行了两个gem的数据验证示例,在这两种情况下,包含下拉列表的单元格都是空的,直到有人选择一个值 我需要的是单元格中显示的默认值。因此,如果%w[可能,是,否]是允许的值,那么我希望在单元格中显示“可能” 我阅读了两个gem文档中似乎相关的部分,

我需要用Ruby创建一个Excel文档。我的要求是:多张工作表、一些基本格式、能够在文档中的单元格之间创建超链接以及创建下拉列表。我发现了两个宝石:axlsx和writeexcel,它们似乎提供了我想要的几乎所有东西。一个错误是创建的下拉列表的默认值。我运行了两个gem的数据验证示例,在这两种情况下,包含下拉列表的单元格都是空的,直到有人选择一个值

我需要的是单元格中显示的默认值。因此,如果
%w[可能,是,否]
是允许的值,那么我希望在单元格中显示“可能”

我阅读了两个gem文档中似乎相关的部分,但我没有找到任何明显的方式来说明,我希望在下拉列表中默认选择一些值


我对axlsx和writeexcel都没有情感上的依恋,如果你能建议任何其他方法来满足我的需求,我会成为一名快乐的露营者。

好的,我已经找到了writeexcel gem解决我问题的方法。我不确定这是愚蠢的还是显而易见的,但它对我来说已经足够好了。我所做的是将默认值写入单元格,然后在同一单元格中添加下拉列表。下面是基于示例文件的代码:

#!/usr/bin/ruby -w
# -*- coding: utf-8 -*-

require 'writeexcel'

workbook  = WriteExcel.new('default_dropdown.xls')
worksheet = workbook.add_worksheet
worksheet.set_column('A:A', 32)
txt = 'Select a value from a drop down list'
worksheet.write(1, 1, 'open')
worksheet.write(1, 0, txt)
worksheet.data_validation(1, 1,
    {
        :validate        => 'list',
        :source          => ['open', 'high', 'close']
    })

workbook.close

还有一个RooGem,检查它是否提供了一些数据验证。从“Roo实现了对所有常见电子表格类型的读取访问”可以看出,Roo允许读取电子表格。我需要写一个。