2

我有一个工作表,我想将网格线仅应用于特定单元格(也仅对特定单元格禁用)。我已经阅读了文档,只能在每个工作表的基础上找到如何去做。为了以防万一,我已经尝试:gridlines=>true过我的风格,但这没有用。

所以,它的要点是,如果可能的话,如何为 AXLSX 中的特定单元格添加/删除网格线?

更新:

这是一个屏幕截图。左侧没有明显的网格线。当我检查格式单元格时,我看不到任何边框来创建效果。在右边你可以看到网格线,不断向右滚动会显示更多的网格线。

Excel电子表格

4

2 回答 2

6

使用 axlsx,您需要像以下这样来实现没有网格但与某些单元格接壤的组合:

require 'axlsx'
package = Axlsx::Package.new
package.workbook do |workbook|
  workbook.styles do |s|
    gridstyle_border =  s.add_style :border => { :style => :thin, :color =>"FFCDCDCD" }
    workbook.add_worksheet :name => "Custom Borders"  do |sheet|
      sheet.sheet_view.show_grid_lines = false
      sheet.add_row ["with", "grid", "style"], :style => gridstyle_border
      sheet.add_row ["no", "border"]
    end
  end
end
package.serialize 'no_grid_with_borders.xlsx'

正如您在上面的示例中所看到的,诀窍是在工作表视图上关闭网格线,然后将您想要的任何边框样式应用于应该有边框的单元格。

最好的

随机的

于 2013-09-23T00:23:12.893 回答
1

这实际上是一个 excel 问题,而不是 axlsx 问题。在 excel 中,您只能逐张关闭网格线。我相信,您要做的是禁用工作表的网格线,然后在一组特定的单元格周围创建边框以模拟“网格线”外观。

于 2013-09-18T16:31:36.127 回答