Momentálne ste offline a čaká sa, kým sa znova pripojíte na internet

Ako používať Visual Basic alebo ASP vytvoriť vo formáte XML pre program Excel 2002 a Excel 2003

DÔLEŽITÉ: Tento článok bol preložený pomocou softvéru na strojový preklad od spoločnosti Microsoft, nie prekladateľom. Spoločnosť Microsoft ponúka články preložené prekladateľmi aj strojovo preložené články, vďaka čomu máte možnosť prístupu ku všetkým článkom databázy Knowledge Base vo svojom jazyku. Strojovo preložený článok však nie je vždy perfektný. Môže obsahovať chyby týkajúce sa slovnej zásoby, syntaxe alebo gramatiky, podobne ako cudzinec môže robiť chyby, keď rozpráva vašim jazykom. Spoločnosť Microsoft nenesie zodpovednosť za akékoľvek nepresnosti, chyby alebo škody spôsobené akýmkoľvek nepresným prekladom obsahu alebo jeho použitím zo strany zákazníkov. Spoločnosť Microsoft softvér na strojový preklad pravidelne aktualizuje.

Pokiaľ chcete vidieť anglickú verziu článku, kliknite sem:285891
SUHRN
Program Microsoft Excel 2002 a Microsoft Office Excel 2003 podporuje formát XML, ktoré môžu obidve Načíst a uložiť zošity (alebo hárky XML). Pomocou tejto tabuľky vo formáte XML formát, môžete vytvoriť viac-hárkové, formátované zošity programu Excel bez použitia Automatizácie. Tento prístup môže byť žiaduce, keď potrebujete vytvoriť programu Excel zošit, ale to nie je možné automatizovať programu Excel (napríklad na webovom serveri alebo od slu¾by) alebo Excel nie je nainštalovaný v systéme, kde je váš kód spustiť.

Tento článok vysvetľuje, ako si môžete vytvoriť šablónu XML že, pri použití s transformáciou Extensible Stylesheet Language (XSL), generuje formátovaný zošita, ktoré môžete otvoriť priamo v programe Excel. XML transformácia je preukázaná Active Server Pages (ASP) a Visual Základné. So zreteľom na vzorky kód jazyka Visual Basic, tabuľky údajov je generované výlučne s XML/XSL; používa sa na otvorenie výsledky minimálne automatizácie v programe Excel.

Poznámka: Vzorka opísané v tomto článku je k dispozícii na prevzatie; Stiahnite návod, nájdete v časti Preberanie na konci tohto článku.
DALSIE INFORMACIE

Vytvorenie šablóny XML pre zošit

  1. Vytvorte nový priečinok, C:\ExcelXML.
  2. V programe Excel, začať nový zošit. Pridať tieto údaje označené bunky A1:F2 zošita v bunkách. Treba uviesť bunku F2 ako vzorec.
    A1: Order ID    B1: Product ID   C1: Unit Price   D1: Quantity   E1: Discount  F1: TotalA2: aaa         B2: 111          C2: 222          D2: 333        E2: 0         F2: =C2*D2*(1-E2)
  3. V bunke F3, napíšte nasledovný vzorec:
    =SUM(F$2:F2)
  4. Vyberte bunky A1:F1. Na Formátovanie ponuky, kliknite na tlačidlo Bunky. Použiť tučné písmo, spodné orámovanie a jednoliatou farbou bunky podfarbenie. Kliknite na položku ok.
  5. Vyberte stĺpce A:F. na Formátovanie ponuku, ukážte na Stĺpec a potom kliknite na tlačidlo Šírka. Typ 15 pre nové šírka stĺpca a potom kliknite na tlačidlo ok. S A:F stĺpce ešte vybraté, na Formátovanie ponuky, kliknite na tlačidlo Bunky. Na Zarovnanie Záložka, vyberte Centrum Vodorovné zarovnanie zozname a potom kliknite na tlačidlo ok.
  6. Vyberte stĺpec E. Na Formátovanie ponuky, kliknite na tlačidlo Bunky. Na Číslo karte, kliknite na tlačidlo Percento určite 0 desatinné miesta a potom kliknite na tlačidlo ok.
  7. Vyberte stĺpec F. Na Formátovanie ponuky, kliknite na tlačidlo Bunky. Na Číslo karte, kliknite na tlačidlo Účtovníctvo a potom kliknite na tlačidlo ok.
  8. Vyberte bunky A3:F3. Na Formátovanie ponuky, kliknite na tlačidlo Výška riadka, typu 25, a potom kliknite na tlačidlo ok. S A3:F3 ešte vybraté, na Formátovanie ponuky, kliknite na tlačidlo Bunky. Orámovať hornej bunky a potom kliknite na ok.
  9. Na Nástroje ponuky, kliknite na tlačidlo Možnosti. Na View kartu, jasné Mriežka políčko a kliknite na tlačidlo ok.
  10. Vyberte riadok 2. Na Okno ponuky, kliknite na tlačidlo Ukotviť priečky.
  11. Vyberte bunku A1.
  12. Na Súbor ponuky, kliknite na tlačidlo Uložiť ako. Prejdite do priečinka C:\ExcelXML ste vytvorili, a uložiť zošit ako "Orders.xsl" v Hárka XML formát.

    Poznámka:: V poli Názov súboru v Uložiť ako dialógové okno, uzavrite názov súboru do úvodzoviek, aby príponu .xml sa nepridá k názvu súboru.
  13. Ukončite program Excel.
  14. Otvoriť Orders.xsl v ľubovoľnom textovom editore, ako napríklad Poznámkový blok.
  15. Vložte nasledovné medzi<?xml version="1.0"?>značku a <workbook>tag:</workbook>
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/TR/WD-xsl"><xsl:template match="/"><xsl:pi name="xml">version="1.0"</xsl:pi>					
  16. Na samom konci Orders.xsl pridať nasledujúce dva riadky:
    </xsl:template></xsl:stylesheet>					
  17. Vyhľadajte nasledovný súbor Tagy v Orders.xsl (Táto sada Tagy predstavuje A2:F2 buniek v pracovnom hárku)
       <Row ss:Height="14.25">    <Cell><Data ss:Type="String">aaa</Data></Cell>    <Cell><Data ss:Type="Number">111</Data></Cell>    <Cell><Data ss:Type="Number">222</Data></Cell>    <Cell><Data ss:Type="Number">333</Data></Cell>    <Cell><Data ss:Type="Number">0</Data></Cell>    <Cell ss:Formula="=RC[-3]*RC[-2]*1*(1-RC[-1])"><Data ss:Type="Number">73926</Data></Cell>   </Row>					
    a nahradiť ju s nasledujúcim kódom XSL:
    <xsl:for-each select="xml/rs:data/z:row">   <Row ss:AutoFitHeight="0" ss:Height="13.5">    <Cell><Data ss:Type="String"><xsl:value-of select="@OrderID"/></Data></Cell>    <Cell><Data ss:Type="Number"><xsl:value-of select="@ProductID"/></Data></Cell>    <Cell><Data ss:Type="Number"><xsl:value-of select="@UnitPrice"/></Data></Cell>    <Cell><Data ss:Type="Number"><xsl:value-of select="@Quantity"/></Data></Cell>    <Cell><Data ss:Type="Number"><xsl:value-of select="@Discount"/></Data></Cell>    <Cell ss:Formula="=RC[-3]*RC[-2]*(1-RC[-1])"><Data ss:Type="Number">0</Data></Cell>   </Row></xsl:for-each>					
  18. Uložiť zmeny, ktoré Orders.xsl a zatvorte súbor.

Použiť Visual Basic transformovať množina záznamov súčasti ADO pretrvával XML na tabuľku vo formáte XML

  1. V jazyku Visual Basic, vytvoriť nové štandardné EXE projekt.
  2. Na Project ponuky, kliknite na tlačidlo Odkazy. Vyberte typ knižnice pre Microsoft ActiveX údajový objekt 2.5 (alebo novší) a Microsoft XML 3.0.
  3. Pridať CommandButton na Form1 a pridajte nasledujúci kód do udalosť kliknúť tlačidla:
        Const sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & _                  "C:\program files\microsoft office\office10\samples\Northwind.mdb"    Const sOutXML = "C:\ExcelXML\Orders.xml"    Const sXSL = "C:\ExcelXML\Orders.xsl"        'Retrieve an ADO recordset of the Orders Detail table in Northwind.    Dim nRecords As Long, nFields As Long    Dim rs As New ADODB.Recordset    rs.Open "SELECT * FROM [Order Details]", sConn, adOpenStatic, adLockOptimistic            'Persist the recordset to a new DOMDocument and store the record count.    Dim oXML As New DOMDocument    rs.Save oXML, adPersistXML    nRecords = rs.RecordCount    nFields = rs.Fields.Count    rs.Close          'Load the XSL (the workbook template with XSL directives) into a DOMDocument.    Dim oXSL As New DOMDocument    oXSL.Load sXSL        'Transform the XML using the style sheet.    Dim oResults As New DOMDocument    oXML.transformNodeToObject oXSL, oResults        If oXSL.parseError.errorCode <> 0 Then        MsgBox "Parse Error: " & oResults.parseError.reason    Else       'Modify the ss:ExpandedRowCount attribute for the <table> node to       'indicate the correct number of rows (count of records + 1 row for       'the header + 1 row for the total).        Dim oTable As MSXML2.IXMLDOMElement        Set oTable = oResults.selectSingleNode("Workbook/Worksheet/Table")        oTable.setAttribute "ss:ExpandedRowCount", nRecords + 2        '***************************************        'Save the results to a file.        Open sOutXML For Output As #1        Print #1, oResults.xml        Close #1        'Open the XML in Excel.        Dim oExcel As Object        Set oExcel = CreateObject("Excel.Application")        oExcel.Workbooks.Open sOutXML        oExcel.Visible = True        oExcel.UserControl = True        '***************************************    End If					
    Poznámka: V prípade potreby upraviť pripojenie reťazec (Const sConn), tak že obsahuje správnu inštaláciu cestu k vzorke prístup Northwind databáza.
  4. Stlačením klávesu F5 na spustenie programu.
  5. Kliknite na Form1 tlačidlo. Údaje z objednávok Detail v šablóne zošita programu Excel sa zobrazí tabuľky v databáze Northwind aby ste si vytvorený.
Vzorka vytvára hárka XML a automatizuje Excel pomocou Otvorené metóda Zošity Zbierka otvoriť XML ako nový zošit. Ako alternatívu prístup, môžete priamo vložiť XML do existujúceho hárka na konkrétnu bunku. Na ilustráciu, nahradiť kód, ktorý sa nachádza medzi Hviezdičky takto:
        'Display the data in a workbook starting at cell B2.        Dim oExcel As Object, oBook As Object        Set oExcel = CreateObject("Excel.Application")        Set oBook = oExcel.Workbooks.Add        oBook.Worksheets(1).Range("B2").Resize(nRecords + 2, nFields + 1).Value(11) = _            oResults.xml 'Note: xlRangeValueXMLSpreadsheet=11        oExcel.Visible = True        oExcel.UserControl = True				
Po vykonaní tejto zmeny, spustite program znova. Všimnite si, že tento čas, údaje hárka XML je vložený do nového zošita začína v bunke B2 prvého pracovného hárka. Údaje buniek a formáty sú uplatnené v rozsahu; Avšak, použitie tohto prístupu, nastavenia špecifické pre riadky, stĺpce a pracovného hárka, a zošit nie sú prenesené.

Použite ASP na transformáciu XML pretrvával ADO záznamov vo formáte XML

  1. Prilepte nasledujúci kód do programu Poznámkový blok. Uložiť kód ako ExcelXML.asp v virtuálne koreňovom priečinku webového servera.Poznámka: Predvolený virtuálny koreňový priečinok je C:\inetpub\wwwroot.
    <%@ Language="vbscript"%><%    Const sConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\program files\microsoft office\office10\samples\Northwind.mdb"    Const sXSL = "C:\ExcelXML\Orders.xsl"        Response.Buffer = True    'Retrieve an ADO recordset of the Orders Detail table in Northwind.    Dim rs, nRecords    Set rs = CreateObject("ADODB.Recordset")    rs.Open "SELECT * FROM [Order Details]", sConn, 3, 3            'Persist the recordset to a new DOMDocument and store the record count.    Dim oXML    Set oXML = CreateObject("Microsoft.XMLDOM")    rs.Save oXML, 1    nRecords = rs.RecordCount    rs.Close          'Load the XSL (the workbook template with XSL directives) into a DOMDocument.    Dim oXSL    Set oXSL = CreateObject("Microsoft.XMLDOM")    oXSL.Load sXSL        'Transform the XML using the style sheet.    Dim oResults    Set oResults = CreateObject("Microsoft.XMLDOM")    oXML.transformNodeToObject oXSL, oResults        If oXSL.parseError.errorCode <> 0 Then       Response.Write "Parse Error: " & oResults.parseError.reason    Else       'Modify the ss:ExpandedRowCount attribute for the <table> node in the XSL.        Dim oTable        Set oTable = oResults.selectSingleNode("Workbook/Worksheet/Table")        oTable.setAttribute "ss:ExpandedRowCount", nRecords + 2        'Return the resulting XML Spreadsheet for display in Excel.        Response.ContentType = "application/vnd.ms-excel"        Response.Charset = "ISO-8859-1"        Response.Write oResults.XML        Response.Flush    End If%>					
    Poznámka: V prípade potreby upraviť pripojenie reťazec (Const sConn), tak že obsahuje správnu inštaláciu cestu k vzorke prístup Northwind databáza.

  2. Spustite program Internet Explorer a prejdite na http://YourWebServer/ ExcelXML.asp, kde YourWebServer je názov webového servera. Údaje z objednávok Detail v šablóne zošita programu Excel sa zobrazí tabuľky v databáze Northwind aby ste si vytvorený.

Ďalšie poznámky

Nasledujúce funkcie programu Excel nemôžu zachovať s XML Formát tabuľky:
  • Grafy
  • OLE objekty
  • Kreslenie tvary alebo automatické tvary
  • Projekty VBA
  • Zoskupiť a sprehľadniť

Prevziať

XMLSpread.exe obsahuje šablóny so štýlmi XML, projektu programu Visual Basic, a ASP skript opísané v tomto článku. Nasledovný súbor je k dispozícii na prevzatie od Microsoft Download Centrum:
PrevziaťPrevziať balík Xmlsprd.exe.Dátum vydania: 27. marca 2001

Ďalšie informácie o preberaní súborov technickej podpory spoločnosti Microsoft sa nachádzajú v nasledujúcom článku databázy Microsoft Knowledge Base:
119591 Získanie podporných súborov spoločnosti Microsoft zo služieb online
Tento súbor bol skontrolovaný antivírusovým programom spoločnosti Microsoft. Spoločnosť Microsoft použila pri kontrole tohto súboru najnovší antivírusový softvér, ktorý bol v čase jeho publikovania k dispozícii. Po publikovaní je súbor uložený na zabezpečených serveroch, ktoré neumožňujú neoprávnené zmeny súborov.
ODKAZY
Ďalšie informácie o ukladaní ADO skupín záznamov vo formáte XML formátovať, nájdete v nasledujúcej webovej lokalite Microsoft Developer Network (MSDN): Ďalšie informácie o streamovanie obsahu MIME Microsoft Office aplikácie, po kliknutí na nasledovné číslo článku databázy Microsoft Knowledge Base:
266263Chyba: Word 2000 a Excel 2000 zobraziť ASP zdroj pri použití MIME typ prúd údajov
199841 Ako zobraziť ASP výsledky pomocou programu Excel v IE s MIME typy
271572 Ako formátovať zošit programu Excel zároveň streamovanie obsahu MIME
307021 Ako previesť údaje XML na program Microsoft Excel 2002 pomocou jazyka Visual Basic.NET
xmlsprd

Upozornenie: Tento článok bol preložený automaticky.

Vlastnosti

ID článku: 285891 – Posledná kontrola: 10/24/2011 11:46:00 – Revízia: 2.0

Microsoft Excel 2002 Standard Edition, Microsoft Active Server Pages 4.0, Microsoft Visual Basic 6.0 Professional Edition

  • kbdownload kbhowto kbmt KB285891 KbMtsk
Pripomienky