2009-05-15 2 views
0

У меня есть классическое веб-приложение ASP, которое выводит отчеты в Excel, но на самом деле это просто html.При использовании «Титулов печати» Excel, как изменить названия на полпути вниз по листу

Некоторые отчеты с несколькими группами и каждой группой могут охватывать несколько страниц (по вертикали). Я знаю, что способность «Страницы» позволяет Excel печатать определенную строку (или строки) на каждой странице, однако мне нужно, чтобы название каждой группы также отображалось в названии. В противном случае заголовок первой группы отображается как название каждой группы.

Я видел в группах Google, что кто-то предложил разместить каждую группу на отдельном листе, но я не думаю, что могу легко выводить несколько рабочих листов - или вообще - используя только html.

Я ищу быстрое и грязное решение, так как у меня нет много времени, чтобы посвятить себя поддержанию этого жестокого старого приложения.

ответ

1

Это немного поздно, когда идут ответы, но я думаю, что нашел решение. Что вы можете сделать, так это открыть Excel, вручную макетировать то, что вы хотите, а затем сохранить его как веб-страницу. Откройте сгенерированный файл (ы) вверх в простой текстовый редактор и изучите сгенерированный HTML/XML. Я сделал это для книги с несколькими листами и, похоже, работает.

Вы можете сделать то же самое с несколькими группами, так как это похоже на решение, которое вы действительно хотите, процесс тот же. Но вариант нескольких листов также будет работать. Вот интересные фрагменты того, что Excel сгенерировал для меня (из Book.htm, а не файлов Sheet), когда я сохранил простую книгу с двумя листами с «abc» на первой странице и «def» на второй:

<script language="JavaScript"> 
var c_lTabs=2; 

var c_rgszSh=new Array(c_lTabs); 
c_rgszSh[0] = "Sheet1"; 
c_rgszSh[1] = "Sheet2"; 

------ 

<xml> 
<x:ExcelWorkbook> 
    <x:ExcelWorksheets> 
    <x:ExcelWorksheet> 
    <x:Name>Sheet1</x:Name> 
    <x:WorksheetSource HRef="Book1_files/sheet001.htm"/> 
    </x:ExcelWorksheet> 
    <x:ExcelWorksheet> 
    <x:Name>Sheet2</x:Name> 
    <x:WorksheetSource HRef="Book1_files/sheet002.htm"/> 
    </x:ExcelWorksheet> 
    </x:ExcelWorksheets> 
    <x:Stylesheet HRef="Book1_files/stylesheet.css"/> 
    <x:WindowHeight>13065</x:WindowHeight> 
    <x:WindowWidth>15315</x:WindowWidth> 
    <x:WindowTopX>360</x:WindowTopX> 
    <x:WindowTopY>75</x:WindowTopY> 
    <x:ProtectStructure>False</x:ProtectStructure> 
    <x:ProtectWindows>False</x:ProtectWindows> 
</x:ExcelWorkbook> 
</xml><![endif]--> 
</head>