Tag: coldfusion 9

使用来自查询的多个工作表创build工作簿

我正在使用ColdFusion 2016,我发现我使用的服务器只有CF9,我对此很新。 我一直在努力更新现有的代码,以适应用户现在想要的。 到目前为止,我已经成功了,但这超出了我。 我有一个网站,生成一个Excel工作簿。 它使用HTML和一个查询来创build它。 以A1中的查询名称开始,A3中的报表date,A5:H5中的表格标题,然后是A6:H53中的数据(确切的长度可以变化,但始终来自列A-H)。 我将发布用于创build工作簿的内容。 我想要做的是使用3个更多的查询来添加3张更多的工作簿。 我已经尝试添加一个我在这里find的function,并没有什么好处。 我试图修改现有的代码来尝试和使用所有4个查询,没有喜悦。 任何帮助,将不胜感激。 让我知道如果我需要添加更多的细节。 这里的代码:(我添加了什么我添加试图让这个工作的意见) <cfsilent> <!— ******************************************************************* Filename: execSummary_Excel.cfm, v1.0 03/07/2012 Created By: Original Writer Description: Excel report export for Executive Summary Report. Change History: Date……..Name………..Description of Change…………………… 08/01/2012 Original Writer Added committed column. 02/28/2013 Original Writer Added stateGM and GM. *************************************************************************—> <cfinvoke component="financial.financial" method="getExecSummary" […]

ColdFusion9如何在<cfscript>中对excel中的列进行格式化

我正在使用CF9。 我已经创build了一个多页工作簿。 我正在尝试格式化每个工作表的列。 格式只是在第一张纸上。 我怎样才能把它应用到所有床单? 此外,我不知道如何获得列宽工作的任何工作表。 这里是我现在得到的代码: <cfscript> qExecSummary = queryNew(""); queryAddColumn(qExecSummary, "responsible", [1,12,13]); queryAddColumn(qExecSummary, "bud_sum", [100,500,1000]); queryAddColumn(qExecSummary, "Spent_YTD", [10,50,100]); queryAddColumn(qExecSummary, "Name", ["A","B","C"]); queryAddColumn(qExecSummary, "Description", ["Descrip1","Descrip2","Descrip3"]); queryAddColumn(qExecSummary, "Committed", ["Committed1","Committed2","Committed3"]); //Create new workbook with one sheet //by default that sheet is the active sheet Workbook = SpreadsheetNew("ExecSummary"); //Add Data to the sheet //Formatting format1.bold="true"; format1.fontsize=12; format1.font="Calibri"; […]

ColdFusion – 用Excel输出打开

我有以下ColdFusion代码以Excel格式打开文件。 <CFCONTENT TYPE="text/tabdelimited"> <CFHEADER NAME="Content-Disposition" VALUE="attachment; filename=""SpendRptFromAPPayments-kfs_#DateFormat( Now(), "yyyymmdd" )##TimeFormat( Now(), "HHmmss" )#.xls"""> <CFOUTPUT>#Request.QueryName# – #Request.QueryID#</CFOUTPUT> Total Amount <CFOUTPUT Query="SpendAPPmt"> #DollarFormat(totalValue)##chr(10)# </CFOUTPUT> 我的电脑上有Excel 2013。 在打开提示屏幕上,如何将“Adobe ColdFusion文件”更改为“Microsoft Excel工作表” 我想更改“是哪个”的设置,使其成为“Microsoft Excel工作表”。

Excel参考单元格值

我正在尝试从excel A中读取值,这个值具有来自另一个excel表B的引用数据。 目前代码: <cfspreadsheet action="read" src="#ExpandPath(".")#/Excel_A.xlsx" sheetname="Sheet1" columns="15-19" rows="6-7" query="qResult" /> <cfdump var="#qResult#"> 转储结果 :所有列中的值无法正确显示。 试图通过电子表格function访问其中一个值; 仍然存在相同的问题。 <cfscript> theSheet = SpreadSheetRead("#ExpandPath(".")#/Excel_A.xlsx","Sheet1"); theValue=SpreadsheetGetCellValue(theSheet,10,1); theFormula=SpreadsheetGetCellFormula(theSheet,10,1); WriteOutput("The value is: " & theValue & " and formula is" & theFormula); </cfscript> 输出 :值为:Sheet1!$ A $ 1,公式为Sheet1!$ A $ 1 看起来电子表格function不支持参考数据值。 我怎样才能访问的Excel单元格中引用数据的值? 编辑1:步骤来复制我想要的。 有两个Excel工作表(Excel_A.xlsx和Excel_B.xlsx)。 Excel_B.xlsx:在单元格A1中插入数字123。 Excel_A.xlsx:在单元格A10中引用Excel_B的A1单元格。 所以在A10中的公式会是 ='Path to [Excel_B.xlsx]Sheet1'!$A$1 […]

使用CFSPREADSHEET填充的电子表格不会自动执行公式

我有一个单张电子表格,其中已经有公式。 使用CFSPREADSHEET,我填充公式引用的字段并将新创build的电子表格发送给用户。 一旦新电子表格下载并打开(并启用编辑点击),公式不会执行。 这些字段保持空白。 有没有办法让他们自动更新,我失踪了?

在Coldfusion中更快的电子表格替代scheme?

我正在尝试使用ColdFusion的spreadsheetaddrows函数来创buildExcel表。 因为我创build电子表格的表格可能非常大,所以我创build了大块的excel文件,以避免服务器超时。 一开始一切正常,但随着过程的进行,它真的变慢了。 例如,我正在testing一个有50,000多行和近100列的表格。 五个小时后,excel文件甚至还没有达到10000行。 = T 看来,电子表格的问题是根据谷歌的问题。 有没有更快,更好的方法来做到这一点? <cfloop index="i" from="#start#" to="#end#" step="10"> <!– variables –> <cfset plus = #i# + 9> <cfif #plus# gt #end#> <cfset plus = #end#> </cfif> <!– /variables –> <!– get i to i+9 records –> <cfquery name="query" datasource="datasource"> select * from ( select a.*, rownum rnum from ( […]

CSV文件到Excel 2010格式化date时间字段

我有几个SQL Server中的date时间字段输出到CSV文件,无论是.txt或.csv。 在Excel 2010中自动打开.csv文件时,会将date时间格式设置为mm:ss.0,并完全删除date部分。 我读过这个: 在Excel中打开一个CSV文件改变我的格式和这个: 保证被Excel识别的date格式 以下是存储在CSV文件(.txt)中的原始文本的片段。 注意date部分是ISO格式。 时间部分确实有毫秒。 "EVENTSTARTDATE","EVENTTITLE","PURCHASEDATE" "2013-04-17 00:00:00.0","Test Event","2013-04-17 15:06:27.56" 这是Excel中的格式: EVENTSTARTDATE EVENTTITLE PURCHASEDATE 00:00.0 Test Event 06:27.6 点击字段显示这些值: EVENTSTARTDATE PURCHASEDATE 4/17/2013 12:00:00 AM 4/17/2013 3:06:28 PM 当我去“格式化单元格…”并查看字段格式时,它是“Custom”和“mm:ss.0”。 我可以重新格式化为date格式,它工作正常,所以显然数据本身是正确的。 为什么Excel只格式化时间部分,为什么要放弃时间? 如果字段types是“常规”,Excel不应该能够parsingdate时间数据? 其他可能相关的信息:我正在使用ColdFusion 9并具有使用CreateODBCDateTime()函数的代码。 <cfif isDate(raw)> <cfset raw = CreateODBCDateTime(raw)> </cfif>

Coldfusion SpreadsheetAddImage函数不插入图像

我目前在CF版本9.0.1,我无法获得SpreadsheetAddImage函数来正确插入图像到我生成的电子表格。 我没有收到任何错误消息,只是图像不显示在电子表格中。 我也排除了find图像或返回它的任何问题(通过使用cfimage writetobrowser属性进行testing)。 我还从电子表格中删除了所有数据和格式,以排除覆盖该单元格内容的任何内容。 只是为了看看我是否可以得到一个空白的电子表格与图像。 看下面的示例代码。 <cfset sObj = SpreadsheetNew()> <!— <cfimage source="pathtomyimage.jpg" name="image"> —> <cfset image_var = ImageRead("pathtomyimage.png")> <cfset SpreadsheetAddRow(sObj, "")> <cfset SpreadsheetAddImage(sObj,image_var,"png","1,1,1,1")> … <cffile action="readbinary" file="#dest_loc#" variable="export_file"> <cffile action="delete" file="#dest_loc#"> <cfheader name="Content-Disposition" value="inline; filename=#file_name#.xls"> <cfcontent type="application/vnd.msexcel" variable="#toBinary(export_file)#"> 我很欣赏任何反馈。 谢谢。

Excel工作表分组和格式

我在这里多次search答案,但这是我第一次问自己的问题。 我有4-5年的Cf经验大约15年,所以虽然我不是专家,但是我知道我在做什么。 我目前有一个项目,我从另一个开发人员接pipe。 部分应用程序将数据从SQL Server 2008数据库输出到一个Excel文件,该文件具有三个工作表或选项卡,按顺序从左到右创build。 我正在努力解决打开Excel文件时,第一张和第三张纸是“分组”的问题。 在标题栏中的文件名称旁边,显示[组],并且这两张表看起来都是活动的。 问题在于,如果用户要突出显示表3中的第5行,则第5行也会在表1中突出显示。我已经search到了每个searchstring,我都能想到并找不到任何东西! 我甚至尝试重新创build基于CF文档的function骨架,并遇到同样的问题。 我自己想出了一些东西。 首先,中间的纸张完全不受影响。 其次,一旦在Excel中,如果select中间表单,则其他所有内容都将得到修复(当然,这对于最终用户来说不是一个好的解决scheme)。 第三,如果我用“xmlformat”等于“false”创build电子表格并将其输出为“xls”,则此问题消失。 最后,我尝试添加一行代码,以便在第三次生成后将活动工作表重新设置为第一行。 这确实打破了分组问题,但是它解决了第一张表中的任何行或列的大小,我无法恢复。 我的代码如下。 如果有人能帮忙,我会非常感激! <cfscript> /* Format for data rows */ dataFormat = StructNew(); dataFormat.font="Arial"; dataFormat.fontsize="10"; dataFormat.italic="false"; dataFormat.bold="false"; dataFormat.alignment="left"; dataFormat.textwrap="true"; dataFormat.fgcolor="white"; dataFormat.bottomborder="thin"; dataFormat.bottombordercolor="black"; dataFormat.topbordercolor="black"; dataFormat.topborder="thin"; dataFormat.leftborder="thin"; dataFormat.leftbordercolor="black"; dataFormat.rightborder="thin"; dataFormat.rightbordercolor="black"; dataFormat.locked = "true"; //dataFormat.dataformat="@"; spreadsheetVar= spreadSheetNew("New", "true"); spreadsheetSetCellValue(spreadsheetVar, "123", 1, 1); spreadsheetSetCellValue(spreadsheetVar, […]

用Coldfusion导入Excel – 接收奇怪的date格式mm \ / dd \ / yyyy

我正在使用ColdFusion 9从Excel(2007,xls)电子表格导入数据。 其中一个导入的列是date字段。 在大多数情况下,date会很好,但是在某些情况下,date格式会出现一些奇怪的现象。 它以mm\/dd\/yyyy 。 我不知道是什么增加了这些额外的。 具体的错误是显而易见的: "11\/15\/2012 is an invalid date or time string." 看直接在电子表格,并在单元格本身,date出现格式正确为mm/dd/yyyy 。 有谁知道可能是什么原因造成的? 跟进 感谢您的帮助。 最后,最好的解决scheme来自CoderSeven。 我使用了Replace(dateString, '\', '', 'all')来删除违规的斜杠并处理数据。 这被certificate是最好的解决scheme,因为我正在处理成千上万个人的电子表格,而当我控制他们使用的电子表格的格式时,我无法控制他们是否将数据input或剪切并粘贴到字段中。 最后,我很想知道额外的斜线来自哪里,但是这个解决scheme运行良好。