Serveur: CF10 Plate-forme: Windows et Linux (Win dans Windows DEV PROD)Comment correctement les dates de format avec SpreadsheetFormatColumns
Je suis générer un fichier Excel pour un client, mais ayant du mal à obtenir des champs de date à se comporter correctement. Tout le reste semble bien fonctionner mais quand j'envoie les données à exceler pour être générées, Excel le traite comme du texte. Ainsi, lorsque le champ est trié, il est géré comme tel.
Plus d'infos: La colonne que j'essaie de configurer s'appelle Date d'arrivée, elle arrive au format mm/dd/yyyy
. (J'ai essayé de format est le m/d/yy
, mais quand il arrive dans la feuille qui ne fonctionne pas aussi bien.)
Code:
<cfset filename = expandPath("./TDYData_(#DateFormat(now(),'mmddyy')#).xls")>
<!--- Make a spreadsheet object --->
<cfset s = spreadsheetNew("TDYData")>
<!--- Add header row --->
<cfset spreadsheetAddRow(s, "TDY Phase,Full Name,Employment Category,Gender,Originating Agency,Agency Comments,Originating Office,Office Comments,Originating Country,TDY Request Received,Mission Office Supported,Type of TDY Support,eCC Submission,eCC Approval,eCC Point of Contact,Date of Departure from Originating Country,Arrival Date,Departure Date,Accomodation Type,Accomodation Comments,Assigned Desk,Local Mobile Number,TDY Comments")>
<!--- format header --->
<cfset spreadsheetFormatRow(s, {bold=true,fgcolor="lemon_chiffon",fontsize=10}, 1)>
<!--- Add query --->
<cfset spreadsheetAddRows(s, myExcel)>
<cfset SpreadSheetAddFreezePane(s,0,1)>
<cfset SpreadsheetFormatColumn(s, {dataformat="m/d/yy"}, 17) />
<cfset SpreadsheetFormatColumn(s, {alignment="right"}, 16) />
<cfheader name="content-disposition" value="attachment; filename=TDY_Data_(#DateFormat(now(),'mmddyy')#).xls">
<cfcontent type="application/msexcel" variable="#spreadsheetReadBinary(s)#" reset="true">
Toutes les idées?
Merci
(Éditer) Gardez à l'esprit que la gestion de format de cellule diffère dans CF9/10/11, mais ... habituellement, vous devez appliquer tous les formats de cellule avant d'ajouter des données aux cellules. (On dirait que le code ci-dessus l'applique après). Avez-vous essayé cela? Il semble fonctionner correctement dans CF11. – Leigh