Tag: cfspreadsheet

我可以添加电子表格行然后格式化吗?

我正在使用cfspreadsheet生成一个Excel电子表格。 我正在逐一添加行。 在添加行之后,我想要格式化它。 像这样的东西: <cfset SpreadsheetAddRow(mySpreadsheet, "hi,this,is,a,test") /> <cfset SpreadsheetFormatRow(mySpreadsheet, { fgcolor:red; }) /> 但是,对于formatrow函数,您必须提供一个行号。 有没有什么办法来格式化我刚刚添加的行,而没有保持一个行我的行列?

cfspreadsheet无法读取空行

给定一个包含N个逻辑行的电子表格 哪一行是完全空白的* cfspreadsheet action="read"将返回一个RecordCount为N – 1的查询。 *完全空白的行是每一个单元格实际上都是空白的行。 请参阅POI文档中的CELL_TYPE_BLANK 。 cfspreadsheet是否可以包含空行?

在导出的excel文件中包含链接

我正在创build一个查询,然后将其下载到一个Excel文档中。 我想在Excel文档中包含一些链接,但不知道如何去做。 我试着把一个锚标签放在querySetCell()值中,但是只是把html打印到excel文件中,html不会被parsing。 我正在使用CF10。 以下是我的代码,任何意见表示赞赏。 <cfset q = queryNew("#columnNames#")> <cfset queryAddRow(q)> <cfset querySetCell(q, "Attributes", "Part Number")> <cfset querySetCell(q, "PrimaryPart", "#local.primaryPart.getProductNumber()#")> <cfset i = 0> <cfloop array="#local.comparableParts#" index="part"> <cfset i++> <cfset querySetCell(q, "alternatePart"& i, "#part.getPartNumber()#")> </cfloop> <cfspreadsheet action="write" query="q" filename="partCompare.xls" overwrite="true" /> <!— Make a spreadsheet object —> <cfset s = spreadsheetNew()> <!— Add header row […]

无法使用ColdFusion创build适当的Excel电子表格

我有一个来自客户端的请求来从查询生成一个Excel电子表格。 我有查询踢出领域,我可以生成Excel文件顺利。 当客户端接受这个Excel文件,然后试图操纵它时,问题就来了。 大部分麻烦来自应该被标记为货币或date的字段。 我有一些挣扎,能够产生一个“真正的”date字段。 在此之前,Excel没有正确sortingdate。 我可以使用下面的代码来调用Excel公式。 DateValue强制Excel将其确认为实际date字段。 但是,通过Excel处理该文件时会失败。 <cfset SpreadsheetSetCellFormula(s ,"DATEVALUE(#Chr(34)##Replacement_ETD##Chr(34)#)" , therow , 9)> 接下来的问题是货币领域。 我无法让Excel将价值确认为货币。 它总是出现习惯。 当这个设置时, SUM函数将不能在Excel中工作。 您可以单独添加字段,如A1+B1+C1 = TOTAL 。 但是,如果有200行,这不会有帮助。 我能够从另一个CF程序员得到一个类似情况的build议。 他先用正确的标题生成Excel文件,并将列设置为适当的字段,如date和货币等。 下一步将是逐行填写字段,并且应该正确格式化。 码: <cfset filename = expandPath("./reports/arrivals.xlsx")> <cfspreadsheet action="read" src = "#filename#" name = "s" > <cfset therow = 0> <cfoutput query="myExcel" startrow="1"> <cfset therow = myExcel.currentrow + […]

可以使用coldfusion来读取excel表格上单元格的背景颜色

我有一个Excel表,其中添加有一个红色的背景,变化有一个黄色的背景,删除是灰色的。 我希望做的是通过表单,并根据单元格的背景颜色,执行相关的数据库操作。 通常我会在自己的列中进行每种types的操作,或者添加另一列来确定操作。 我有什么select来获取电子表格对象中的“格式”? 谢谢

ColdFusion11:CFContent不会写入可打开的excel文件

我想在ColdFusion中做一个简单的任务:生成一个excel文件,并在浏览器中下载。 我有这个: <cfset local.sheet = SpreadsheetNew("My Spreadsheet", "true") /> <cfset SpreadsheetAddRow(local.sheet, "Col1,Col2,Col3") /> <cfheader name="content-disposition" value="attachment;filename=NiceName.xlsx" /> <cfcontent type="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" variable="#spreadsheetReadBinary(local.sheet)#" reset="true" /> 哪个在CF9上完美工作,但是在CF11上没有。 打开文件时,它说: Die Datei'NiceName.xlsx'由Excel提供下载免费,已经上市的数百个免费私人表格。 ÜberprüfenSie,ob die Dateibeschädigtist und ob die Dateierweiterung dem Dateiformat entspricht。 这意味着: Excel无法打开“NiceName.xlsx”文件,因为文件格式或-ending无效。 请validation,如果文件已损坏,文件结尾对应于文件格式。 我可以: <cfmailparam>表并通过邮件接收文件。 <cfspreadsheet action="write">表并在服务器上接收文件。 在这两种情况下,这些文件都是可读的。 我努力了: <cfspreadsheet action="write">表单,然后使用<cfcontent file="#pathToFile#"> ,这是行不通的。 检查我的IIS的URL重写规则。 检查我的IIS的.xlsx MIMEtypes。 这和我的代码一样。 最后添加了一个<cfabort> ,所以没有其他事情会发生。 […]

不同ColdFusion版本的cfspreadsheet单元格数据修剪问题

采取以下代码… <cfspreadsheet action="read" src="#z.xlsfile#" query="data" headerrow="1" excludeHeaderRow="true" /> <cfoutput> <!— Lets replace spaces with $ so they are easy to see —> <cfloop query="data"> #data["Doc Type"][data.currentrow]# – #replace(data["Doc Type"][data.currentrow],' ','$','all')#<br> #data["Doc No"][data.currentrow]# – #replace(data["Doc No"][data.currentrow],' ','$','all')#<br> #data["Doc Rev"][data.currentrow]# – #replace(data["Doc Rev"][data.currentrow],' ','$','all')#<br> #data["File Name"][data.currentrow]# – #replace(data["File Name"][data.currentrow],' ','$','all')#<br> <hr> </cfloop> </cfoutput> <cfabort> 正在读取的XLS文件具有包含前导和尾随空格的单元数据。 在一台ColdFusion服务器上,输出结果不显示空格,就像<cfspreadsheet>自动修剪所有数据一样。 在另一台服务器上没有。 […]

我是否可以调整Excel列的宽度而不单独设置每个列的宽度?

我正在使用cfspreadsheet使用ColdFusion生成Excel电子表格。 我插入一个标题行,然后使用spreadsheetAddRows将查询转储到工作表中。 问题是,列通常不够宽。 我知道我可以使用SpreadsheetSetColumnWidth来单独调整每列,但有什么办法,我可以将自动宽度应用于整个工作表? 我不知道每列的最大宽度,我不想单独应用到每列。 Excel有列的自动宽度function – 有什么办法从ColdFusion代码触发它? (或者甚至更好:我可以添加到自动宽度 – 设置每个列的最大宽度+ 2什么的?)

cfSpreadsheet 2位数年份

在ColdFusion 11中,我使用cfSpreadsheet将.xls文件转换为查询对象。 以下是我的演示电子表格的屏幕截图: 我使用这段代码来创build查询对象: <cfspreadsheet action="read" src="demo_spreadsheet.xls" excludeHeaderRow="true" headerrow="1" query="demo_query"/> <cfdump var="#demo_query#"> …我得到这些结果: 请注意,电子表格中的所有4位数年份现在都是2位数年份? 当我去使用这个代码输出查询对象中的数据时: <ul> <cfoutput query="demo_query"> <li>#name# – #dateformat(start_date, 'medium')#</li> </cfoutput> </ul> …我得到下面的输出(好吧,我是新来的,所以我不能发布两个以上的屏幕截图,所以你不得不相信我在这个复制/粘贴): 阿尔法 – 2007年1月1日 布拉沃 – 1972年2月2日 查理 – 2017年3月3日 三angular洲 – 1984年4月4日 回声 – 2029年12月31日 Foxtrot – 1930年1月1日 高尔夫 – 1930年1月1日 1907年现在是2007年,1917年现在是2017年,1929年现在是2029年,2030年现在是1930年。看来,1930年1月1日之前的任何一年的年份被认为是20xx年,而2029年12月31日之后的年份被认为是19xx年。 我错过了什么吗? 我认为我们用2000年数字来看待这种情况。 有没有一个简单的设置,我有不正确的地方? 我已经Google了谷歌这个问题,我什么都找不到。 任何build议将是最受欢迎的。

使用ColdFusion条件格式化Excel文件

我正在使用cfscript spreadsheetNew方法dynamic构build电子表格。 即 <cfscript> downloadDoc = spreadsheetNew("spreadSheetName"); spreadsheetAddRow(downloadDoc,"spreadsheetCols"); …. </cfscript> 我正在构build的其中一列包含一个公式,用于显示用户键入空白列的值与当前值(不同列中的值)之间的百分比差异。 我build立这个的用户请求,我添加条件格式来改变公式单元格的颜色的基础上的价值(即如果变化大于20%或小于-20%的单元格应该是红色)。 由于影响公式的值之一是由用户键入的,颜色变化将需要在Excel中发生,而不是在我的函数中。 在Excel中很容易,只是不知道如何将其构build到由cfml生成的Excel文件中。 我的问题是,有没有人知道这是可能的使用cfml(通过cfscript或cfspreadsheet标签),以及如何做到这一点? 我没有find任何东西用谷歌search,而searchcfdocs.org没有任何改变。