2012-05-08 52 views
1

我正在使用cfspreadsheet生成excel电子表格。我正在逐一添加行。在添加该行后,我立即想要对其进行格式化。例如:我可以添加电子表格行并格式化吗?

<cfset SpreadsheetAddRow(mySpreadsheet, "hi,this,is,a,test") /> 
<cfset SpreadsheetFormatRow(mySpreadsheet, 
    { 
     fgcolor:red; 
    }) /> 

但是,对于formatrow函数,您必须提供一个行号。有没有什么方法来格式化我刚刚添加的行,而没有保持一个我正在使用的行的计数器?

回答

5

电子表格对象本身知道其中有多少行,类似于查询对象。

<cfset CurrentRow = mySpreadsheet.RowCount /> 

更新你的榜样,使其工作在ACF9:

<cfset SpreadsheetFormatRow(mySpreadsheet, 
    { 
     fgcolor = 'red' 
    }, mySpreadSheet.RowCount) /> 
+3

记住'RowCount'返回总的行数,而'SpreadSheetAddRows(表,数据)'工作与上次填充行。因此,您仍然必须考虑任何偏移量(即,如果从1以外的行开始)或行之间的间距。 – Leigh

+0

虽然这是真的,但OP表示他们正在逐行添加行,所以此解决方案适用于他们。 – Busches

+0

很可能。从第1行开始将是我的假设,但他们没有明确说明。所以代码可能会或可能不会按原样工作。知道如何调整逻辑是他们(以及未来的读者)有好的信息:) – Leigh

相关问题