1

我正在使用<cfspreadsheet>将数据库查询输出到 Excel 电子表格。手动创建这些电子表格时,可以突出显示所有单元格和“格式化为表格”。这意味着当点击表格标题时,用户可以对表格进行升序和降序排序。

生成 Excel 文件时是否可以在 ColdFusion 代码中指定此格式?

4

1 回答 1

1

如果您使用的是 Coldfusion 9,则可以使用 SpreadSheetNew、SpreadSheetAddRow、SpreadSheetFormat 函数从数据集中设置 excel 电子表格的样式

 <cfset sObj = spreadsheetNew("myreport","yes")>
 <cfset SpreadsheetAddRow(sObj, "Column_1, ... , Column27")>

 <cfset SpreadsheetFormatRow(sObj, {bold=TRUE, alignment="center"}, 1)>

 <cfset spreadsheetAddRows(sObj, qMyQuery)>
    <cfheader name="content-disposition" value="attachment; filename=report_#Dateformat(NOW(),"MMDDYYYY")#.xlsx">

但是请注意,这对 JVM 来说可能非常繁重,我有一个查询,我正在创建一个 xls,只对标题行应用两种样式(粗体,文本中心),任何超过 700 行的查询都会关闭整个服务器通过 JVM 内存丢失...这是我的 SO 问题,相关代码/答案SpreadsheetAddRows 在中等大小的查询中失败

它已被 adobe 记录为一个错误

于 2013-04-26T14:38:44.027 回答