Coldfusion Spreadsheet空白细胞

时间:2014-01-06 19:21:00

标签: excel coldfusion cfspreadsheet

我正在尝试编写一个脚本来将Excel工作表上传到数据库中,但我遇到了一个小问题。该脚本需要是动态的,因此无需更改即可上传不同的Excel工作表,只需工作表必须遵循与以前相同的约定。

所以,通过这样做:

<cfloop from="2" to="#sheet.rowcount#" index="row">

它将循环到行的末尾,没有?

情节扭曲:我必须将空白单元转换为“N / A”

足够简单:

<cfif SpreadsheetGetCellValue(sheet,row,col) EQ "">
    <cfset SpreadsheetSetCellValue(sheet,"N/A",row,col) />
</cfif>

问题:这导致我的虚拟输出上出现了几十行(最后,在行停止包含任何内容之后)

N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A

N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A
N/A

非常重复。这张纸是56行长,但这必须超过100.我担心将空白单元格改为“N / A”是罪魁祸首,但我不知道如何修复它。这是完整的文件,不幸的是我不能显示excel表。但它是56行,17列。

<cfspreadsheet action="read" src="derp.xlsx" name="sheet"> <!--- edit src --->
<!--- 17 columns wide 56 rows --->
<cfoutput>
    <cfloop from="2" to="#sheet.rowcount#" index="row">
        <cfloop from="1" to="17" index="col"> <!--- multi row selection (edit based on excel sheet) --->
        <cfif SpreadsheetGetCellValue(sheet,row,col) EQ "">
            <cfset SpreadsheetSetCellValue(sheet,"N/A",row,col) />
        </cfif>
        <cfoutput>#SpreadSheetGetCellValue(sheet,row,col)#</cfoutput><br />
        </cfloop>
        <br />
    </cfloop>
</cfoutput>

如果脚本超过rowcount,如何将空白单元格转换为“N / A”?

0 个答案:

没有答案