Pagina aspx -- > foglio excel

lunedì 07 luglio 2008 - 18.27

DonDinero Profilo | Newbie

genero un foglio exce da una pagina aspx.
Tutto perfetto! Addirittura riesco ad assegnare formati a due decimali ai campi numerici con l'istruzione style='vnd.ms-excel.numberformat: #,##0.00' nei td delle celle che necessitano di dati numerici a due decimali.
Ciò che non riesco proprio a fare è l'imposta pagina orientamento orizzontale.

In rete ho visto che alcuni ci sono riusciti facendo così.

<style>
<!--
@page
{
mso-page-orientation:landscape;
margin:.98in .39in .98in .39in;
mso-header-margin:.51in;
mso-footer-margin:.51in;
}
</style>

ma a me non funziona.
Devo dire che l'ho preso e messo così. L'impostazione dei margini funziona, ma l'imposta pagina orizzontale no.
Perchè?

AIUTATEMI!!!!!!!!!

Brainkiller Profilo | Guru

>In rete ho visto che alcuni ci sono riusciti facendo così.
>ma a me non funziona.
>Devo dire che l'ho preso e messo così. L'impostazione dei margini
>funziona, ma l'imposta pagina orizzontale no.
>Perchè?

Ciao,
io personalmente quando ci sono generazioni di file excel così specifiche mi affido ai PIA, ho scritto qui un articolo sui vari metodi per generare file Excel:
http://www.dotnethell.it/articles/ExportExcelDataset.aspx
Anche perchè quegli stili che hai indicato tu sono proprietari di Microsoft, e io sono un po' allergico agli stili proprietari

Ciao

David De Giacomi | Microsoft MVP
http://blogs.dotnethell.it/david/

DonDinero Profilo | Newbie

Ciao.
Ho risolto mettendo nella <head> questo xml

<!--[if gte mso 9]><xml>
<x:ExcelWorkbook>

<x:ExcelWorksheets>
<x:ExcelWorksheet>

<x:Name>Risk_Progress</x:Name>
<x:WorksheetOptions>
<x:FitToPage/>
<x:FitToPage/>

<x:Print>

<x:FitHeight>17</x:FitHeight>

<x:ValidPrinterInfo/>
<x:PaperSizeIndex>9</x:PaperSizeIndex>
<x:HorizontalResolution>600</x:HorizontalResolution
<x:VerticalResolution>600</x:VerticalResolution

</x:Print>

<x:Selected/>
<x:DoNotDisplayGridlines/>
<x:CodeName>Risk_Progress</x:CodeName>


<x:ProtectContents>False</x:ProtectContents>
<x:ProtectObjects>False</x:ProtectObjects>

<x:ProtectScenarios>False</x:ProtectScenarios>
</x:WorksheetOptions>

</x:ExcelWorksheet>
</x:ExcelWorksheets>

<x:WindowHeight>2780</x:WindowHeight>
<x:WindowWidth>39035</x:WindowWidth>

<x:WindowTopX>0</x:WindowTopX>
<x:WindowTopY>15</x:WindowTopY>

<x:ProtectStructure>False</x:ProtectStructure>
<x:ProtectWindows>False</x:ProtectWindows>

</x:ExcelWorkbook>
<x:ExcelName>
<x:Name>Print_Titles</x:Name>
<x:SheetIndex>1</x:SheetIndex>
<x:Formula>=Risk_Progress!$8:$9</x:Formula>
</x:ExcelName>
</xml><![endif]-->


Ho impostato le due righe

<x:WindowHeight>2780</x:WindowHeight>
<x:WindowWidth>39035</x:WindowWidth>
.. con un pò di tentativi e un pò di fattore "c", ho risolto.

Con:
<x:ExcelName>
<x:Name>Print_Titles</x:Name>
<x:SheetIndex>1</x:SheetIndex>
<x:Formula>=Risk_Progress!$8:$9</x:Formula>
</x:ExcelName>

ho anche impostato le righe di intestazione da ripetere a ogni cambio pagina.
Funzionano anche queste. Solo che al momento di aprire il file mi appare un messaggio che dice :

Durante il caricamento si sono verificati dei problemi nelle seguenti aree: Nome di Excel.

Do cmq l'ok e il report si apre bene con l'impostazione delle righe da ripetere corretta.

Sapresti dirmi come poter eliminare quell'odioso messaggio.

Grazi e ciao
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5