1

我试图在 CF 9 中隐藏电子表格的选项卡,但该选项卡不会保持隐藏状态。
我正在处理隐藏数据,然后使用 CF 函数保存工作簿。

我在使用电子表格保存之前添加了以下内容:

sheetIndex = sObj.SHEETNUMBER - 1 ; // -1 its java 0 indexed ...vs cf 1 indexed 
poiObj= sObj.getWorkBook();
poiObj.setSheetHidden(javacast("int",sheetIndex), javacast("boolean", true));

这是一个错误还是我可以解决的问题?也许我需要直接从脚本中保存?

4

2 回答 2

0

它对我来说很好,所以我怀疑代码中还有其他我们看不到的东西。您应该发布一个演示问题的SSCCE

在不了解更多信息的情况下,也许您正试图隐藏工作簿中的唯一工作表?工作簿中的至少一张工作表必须始终可见。

<cfscript>
    sheet = SpreadSheetNew("First Sheet");
    SpreadSheetCreateSheet(sheet, "Second Sheet");
    SpreadSheetCreateSheet(sheet, "Third Sheet");

    // note: this is an undocumented function
    wb = sheet.getWorkBook();
    sheetIndex = wb.getSheetIndex("Second Sheet"); 
    wb.setSheetHidden( javacast("int", sheetIndex), javacast("boolean", true));
    SpreadSheetWrite(sheet, "c:\path\someFile.xls", true);
</cfscript>
于 2013-11-18T18:14:00.227 回答
0

在调查中,我试图隐藏当前工作表。通过将“活动工作表”更改为任何其他工作表,可以隐藏想要隐藏的工作表。

(当您(尝试)隐藏当前的工作表时,它不会自动神奇地转到另一张工作表。 - 最终什么都不做。)

于 2013-11-20T15:45:17.993 回答