Teď jste offline a čekáte, až se znova připojí internet.

Použití skriptů ASP k vytvoření sešitu XML pro zobrazení na straně klienta (Tento článek může obsahovat odkazy na anglický obsah (dosud nepřeložený).)

Důležité: Tento článek byl přeložen pomocí software společnosti Microsoft na strojový překlad, ne profesionálním překladatelem. Společnost Microsoft nabízí jak články přeložené překladatelem, tak články přeložené pomocí software na strojový překlad, takže všechny články ve Znalostní databázi (Knowledge Base) jsou dostupné v češtině. Překlad pomocí software na strojový překlad ale není bohužel vždy dokonalý. Obsahuje chyby ve skloňování slov, skladbě vět, nebo gramatice, podobně jako když cizinci dělají chyby při mluvení v češtině. Společnost Microsoft není právně zodpovědná za nepřesnosti, chyby nebo škody vzniklé chybami v překladu, nebo při použití nepřesně přeložených instrukcí v článku zákazníkem. Společnost Microsoft aktualizuje software na strojový překlad, aby byl počet chyb omezen na minimum.

Projděte si také anglickou verzi článku:288130
Souhrn
Tento článek ukazuje skriptu Microsoft Active Server Pages (ASP) vytvoří tabulky ve formátu Tabulka XML (XMLSS) pomocí komponenty Tabulka Office. XMLSS lze zobrazeného straně klienta v několika způsoby:
  • V komponenty Tabulka na webové stránce
  • Uzavřený zobrazené v-místě v prohlížeči
  • Otevřít v aplikaci Microsoft Excel
Další informace
Použití komponenty Tabulka v kódu na straně serveru k vytvoření tabulek obsahuje další škálovatelnost a lepší výkon porovnání pomocí automatizace straně serveru z aplikace Microsoft Excel. Doporučujeme provést není recomment automatizace systému Office aplikací, včetně Excel, na serveru. Tato metoda měli vyhnout při další alternativy pro dosažení stejných výsledků jsou k dispozici. XMLSS může přetrvávat mnoho funkcí běžné komponenty Tabulka a Microsoft Excel. Multi-Sheet sešity, formátování buněk, automatický filtr, vzorce buňky a přepočet představují handful tyto funkce. Komponenta Tabulka má objektový model, který odpovídá úzce modelu objektu pro aplikaci Microsoft Excel. Proto pokud jste obeznámeni s Excel objektový model, můžete snadno použít některé vaše existující Excel kód s změny pro použití s komponenty Tabulka.

Následující příklad znázorňuje způsob generování multi-sheet sešitu v XMLSS používání komponenty Tabulka s ASP. Ukázkové také popisuje zobrazit výsledné XMLSS-straně klienta na webové stránce nebo v aplikaci Microsoft Excel.

Skript ASP k sestavení XMLSS pomocí komponenty Tabulka

Uložit následující ASP jako XMLSS.asp virtuálního kořenového adresáře serveru WWW. Ve výchozím nastavení je kořenový adresář C:\inetpub\wwwroot.
<% Language=VBScript %><%    Response.Buffer = True    Response.ContentType = "text/xml"    Dim NumOrders, NumProds, r    NumOrders = 300    NumProds = 10            Dim oSS    Dim oOrdersSheet    Dim oTotalsSheet    Dim oRange    Dim c        Set oSS = CreateObject("OWC10.Spreadsheet")    Set c = oSS.Constants    'Rename Sheet1 to "Orders", rename Sheet2 to "Totals" and remove Sheet3    Set oOrdersSheet = oSS.Worksheets(1)    oOrdersSheet.Name = "Orders"    Set oTotalsSheet = oSS.Worksheets(2)    oTotalsSheet.Name = "Totals"    oSS.Worksheets(3).Delete        '=== Build the First Worksheet (Orders) ==============================================            'Add headings to A1:F1 of the Orders worksheet and apply formatting    Set oRange = oOrdersSheet.Range("A1:F1")    oRange.Value = Array("Order Number", "Product ID", "Quantity", "Price", "Discount", "Total")    oRange.Font.Bold = True    oRange.Interior.Color = "Silver"    oRange.Borders(c.xlEdgeBottom).Weight = c.xlThick    oRange.HorizontalAlignment = c.xlHAlignCenter       'Apply formatting to the columns    oOrdersSheet.Range("A:A").ColumnWidth = 20    oOrdersSheet.Range("B:E").ColumnWidth = 15    oOrdersSheet.Range("F:F").ColumnWidth = 20    oOrdersSheet.Range("A2:E" & NumOrders + 1 _        ).HorizontalAlignment = c.xlHAlignCenter    oOrdersSheet.Range("D2:D" & NumOrders + 1).NumberFormat = "0.00"    oOrdersSheet.Range("E2:E" & NumOrders + 1).NumberFormat = "0 % "    oOrdersSheet.Range("F2:F" & NumOrders + 1).NumberFormat = "$ 0.00" '"_($* #,##0.00_)"            'Obtain the order information for the first five columns in the Orders worksheet    'and populate the worksheet with that data starting at row 2    Dim aOrderData    aOrderData = GetOrderInfo    oOrdersSheet.Range("A2:E" & NumOrders + 1).Value = aOrderData        'Add a formula to calculate the order total for each row and format the column    oOrdersSheet.Range("F2:F" & NumOrders + 1).Formula = "=C2*D2*(1-E2)"        oOrdersSheet.Range("F2:F" & NumOrders + 1).NumberFormat = "_(  $* #,##0.00   _)"    'Apply a border to the used rows    oOrdersSheet.UsedRange.Borders(c.xlInsideHorizontal).Weight = c.xlThin    oOrdersSheet.UsedRange.BorderAround , c.xlThin, 15        'Turn on AutoFilter and display an initial criteria where    'the Product ID (column 2) is equal to 5    oOrdersSheet.UsedRange.AutoFilter    oOrdersSheet.AutoFilter.Filters(2).Criteria.FilterFunction = c.ssFilterFunctionInclude    oOrdersSheet.AutoFilter.Filters(2).Criteria.Add "5"    oOrdersSheet.AutoFilter.Apply        'Add a Subtotal at the end of the usedrange    oOrdersSheet.Range("F" & NumOrders + 3).Formula = "=SUBTOTAL(9, F2:F" & NumOrders + 1 & ")"        'Apply window settings for the Orders worksheet    oOrdersSheet.Activate   'Makes the Orders sheet active    oSS.Windows(1).ViewableRange = oOrdersSheet.UsedRange.Address    oSS.Windows(1).DisplayRowHeadings = False    oSS.Windows(1).DisplayColumnHeadings = False    oSS.Windows(1).FreezePanes = True    oSS.Windows(1).DisplayGridlines = False        '=== Build the Second Worksheet (Totals) ===========================================        'Change the Column headings and hide row headings    oTotalsSheet.Activate    oSS.Windows(1).ColumnHeadings(1).Caption = "Product ID"    oSS.Windows(1).ColumnHeadings(2).Caption = "Total"    oSS.Windows(1).DisplayRowHeadings = False        'Add the product IDs to column 1    Dim aProductIDs    aProductIDs = GetProductIDs    oTotalsSheet.Range("A1:A" & NumProds).Value = aProductIDs    oTotalsSheet.Range("A1:A" & NumProds).HorizontalAlignment = c.xlHAlignCenter    'Add a formula to column 2 that computes totals per product from the Orders Sheet    oTotalsSheet.Range("B1:B" & NumProds).Formula = _        "=SUMIF(Orders!B$2:B$" & NumOrders + 1 & ",A1,Orders!F$2:F$" & NumOrders + 1 & ")"    oTotalsSheet.Range("B1:B" & NumProds).NumberFormat = "_(  $* #,##0.00   _)"    'Apply window settings for the Totals worksheet    oSS.Windows(1).ViewableRange = oTotalsSheet.UsedRange.Address        '=== Setup for final presentation ==================================================        oSS.DisplayToolbar = False    oSS.AutoFit = True    oOrdersSheet.Activate    Response.Write oSS.XMLData    Response.EndFunction GetOrderInfo()    ReDim aOrderInfo(NumOrders,5)    Dim aPrice, aDisc    aPrice = Array(10.25, 9.5, 2.34, 6.57, 9.87, 4.55, 6, 13.05, 3.3, 5.5)    aDisc = Array(0, 0.1, 0.15, 0.2)    For r = 0 To NumOrders-1        aOrderInfo(r, 0) = "'" & String(7-Len(CStr(r+1)), "0") & r+1 'Col 1 is Order Number        aOrderInfo(r, 1) = Int(Rnd() * NumProds) + 1                 'Col 2 is Product ID        aOrderInfo(r, 2) = Int(Rnd() * 20) + 1                       'Col 3 is Quantity        aOrderInfo(r, 3) = aPrice(aOrderInfo(r, 1)-1)                'Col 4 is Price        aOrderInfo(r, 4) = aDisc(Int(Rnd() * 4))                     'Col 5 is Discount    Next    GetOrderInfo = aOrderInfoEnd FunctionFunction GetProductIDs()    ReDim aPIDs(NumProds, 1)    For r = 0 To NumProds-1        aPIDs(r, 0) = r+1    Next    GetProductIDs = aPIDsEnd Function%>				

Zobrazit na webové stránce XMLSS

Chcete-li zobrazit ukázkový XMLSS na webové stránce, musíte pouze nastavit vlastnost XMLURL pro komponenty Tabulka na adresu URL pro ASP, způsobem:
<html><body><object classid="clsid:0002E551-0000-0000-C000-000000000046" id="Spreadsheet1">  <param name="XMLURL" value="http://YourWebServer/xmlss.asp"></object></body></html>				
Poznámka Pokud používáte Microsoft Office 2003, může mít změna classid v výše kódu jako použitelná.

V předchozím HTML XMLURL vlastnost nastavit pomocí <param> značku. Při spuštění v případě potřeby pomocí následující kód může také nastavit vlastnost XMLURL.
   Spreadsheet1.XMLURL = "http://YourWebServer/xmlss.asp"				

V aplikaci Microsoft Excel zobrazit XMLSS

XMLSS je vytvořen s komponenty Tabulka lze otevřít v aplikaci Microsoft Excel. Formátování a funkce implementovat v komponenty Tabulka může být sdílena s aplikací Microsoft Excel. Komponenta Tabulka podporuje některé funkce Excel nepodporuje. Navíc aplikace Excel podporuje některé funkce součást Tabulka nepodporuje. Značky XML nebo Excel neimplementuje atributy jsou ignorovány, při otevření XMLSS.

Chcete-li zobrazit výsledky ukázkový skript ASP v aplikaci Microsoft Excel, postupujte takto:
  1. Spuštění aplikace Microsoft Excel.
  2. V nabídce soubor klepněte na tlačítko Otevřít.
  3. V poli Název souboru zadejte http://YourWebServer/xmlss.asp a potom klepněte na tlačítko Otevřít.
Prozkoumejte sešitu a Všimněte si, že data a formáty, které byly použity v době spuštění jsou všechny přítomen v sešitu při otevření v aplikaci Excel. Existuje jedna výjimka: Tato záhlaví titulky, které jsou vytvořeny komponenty Tabulka převodníky apl.Excel protože tato funkce komponenty Tabulka uzavřený nesdílí je. Pokud vytvoříte XMLSS komponenty Tabulka z důvodu zobrazením souboru v aplikaci Excel, uvědomte různých funkcí každý podporuje.

Jiným způsobem otevřít XMLSS ASP vytvořen v aplikaci Microsoft Excel je dodat typ Excel Multipurpose Internet Mail Extensions (MIME) jako ContentType ve vaší ASP. Při použití typu Excel MIME a procházet vaše ASP mohou být XMLSS vykreslen uzavřený v-místě v prohlížeči. Postupujte takto:
  1. V textovém editoru otevřete XMLSS.asp.
  2. Změnit ve skriptu následující řádek:
    Response.ContentType = "text/xml"					
    změnit řádek kódu vypadat následující:
    Response.ContentType = "application/vnd.ms-excel"					
  3. Uložte změny XMLSS.asp a spusťte aplikaci Windows Internet Explorer.
  4. Procházet http://YourWebServer/XMLSS.asp. Tabulka XML je vykreslen uzavřený hostitelem v-místě v prohlížeči.
Odkazy
Další informace naleznete na následující web tématu Office Web Components: Další informace naleznete v následujících článcích znalostní báze Microsoft Knowledge Base:
285891Použití jazyka nebo ASP k vytvoření tabulky XML pro aplikaci Excel 2002 a Excel 2003
278976Jak použít XSL k transformaci tabulku Excel XML pro použití na straně serveru
257757Důležité informace týkající se automatizace systému Office na straně serveru
xl2003 XL2007

Upozornění: Tento článek je přeložený automaticky

Vlastnosti

ID článku: 288130 - Poslední kontrola: 05/14/2007 21:51:06 - Revize: 5.2

Microsoft Office 2003 Web Components, Microsoft Office XP Web Components, Microsoft Office Excel 2007, Microsoft Office Excel 2003, Microsoft Excel 2002 Standard Edition, Microsoft Active Server Pages 4.0

  • kbmt kbhowto kbofficewebspread KB288130 KbMtcs
Váš názor
>&t=">error="var m=document.createElement('meta');m.name='ms.dqp0';m.content='true';document.getElementsByTagName('head')[0].appendChild(m);" onload="var m=document.createElement('meta');m.name='ms.dqp0';m.content='false';document.getElementsByTagName('head')[0].appendChild(m);" src="http://c1.microsoft.com/c.gif?"> >