当前位置: 首页 > 知识库问答 >
问题:

Perl Excel::Writer::XLSX-动态设置列格式/合并单元格

云宾鸿
2023-03-14

我正在使用Excel::Writer::XLSX从数组中创建Excel文件。现在,我正试图从数据中创建一个格式化的表(尽可能多地创建,而不是将其返回到另一个文件中)。

首先,当我使用set_column()设置背景色时,该颜色将针对整个列进行格式化。是否有一种方法可以指定只访问文件中的内容?不幸的是,当程序运行时,它每次都是动态的,不知道表中的最后一行应该是什么。

第二,有没有办法根据单元格内部的内容合并单元格?这又与动态问题有关,如果我收集的所有数据都在线,就会有一个最佳输出。如果是这样的话,我可以很容易地设置这些合并单元格的范围。但是例如,如果我有10行第2列写着“A”,然后10行第2列写着“B”,我想把“A”和“B”合并在一起。问题是,它是否总是有10行,其中包含该值,这是未知的。

谢谢你的意见!

共有1个答案

颜新
2023-03-14

首先,当我使用set_column()设置背景色时,该颜色将针对整个列进行格式化。是否有一种方法可以指定只访问文件中的内容?

不可以。您必须在写入单元格时将格式添加到单元格中。

但是例如,如果我有10行第2列写着“A”,然后10行第2列写着“B”,我想把“A”和“B”合并在一起。

这在Excel::Writer::XLSX中是不可能的。(事实上,我认为在Excel中不使用宏是不可能的)。

由于这两个问题都与事先不知道数据的大小和值有关,因此您可以先将数据读入数组,然后对其进行处理,以找到所需的格式维度和合并范围,然后将其写出。

 类似资料:
  • mergeCells(string $scope, string $data [, resource $formatHandler]): self string $scope $excel->fileName("test.xlsx") ->mergeCells('A1:C1', 'Merge cells') ->output();

  • 我正在使用JavaApachePOI生成excel,我只需要美化它(带边框) 这是我生成excel的一些代码

  • 如您所见,“A”列的每个单元格由两行组成。我需要将这两行合并为一行,并使用这两行的文本。如果我尝试加入单元格,它只保留来自上行的文本。 这里我上传了一个. xls文件的示例。

  • 我想在POI中形成如下的excel输出: 如图所示,我在Header3、Header4和Header5下分别有3个子列。 名单如下: ListA-包含列A的值 ListB-包含列B的值 List1-是数据库行的列表,每行有3列。第一列位于标题3下,第二列位于标题4下,第三列位于标题5下,即分别为C、F和i列。 List2和List3-与List1相似,每个值分别位于Header3、4和5之下。列表

  • 我正在 中使用 现在我遇到了表视图单元格高度的问题。我正在聊天屏幕上工作,所以我有文字,图像。所以我在管理屏幕的其中取了一个原型单元。现在下面是我的身高代码 因此,文本单元格没有得到我所期望的,但我不知道我的错误在哪里,还有一件事,如果我< code > returnuitableviewautomaticdimension ,它的工作很好的文本信息,而不是图像。请帮助我,先谢了。