Η παράμετρος StyleSheets της μεθόδου OpenXML αγνοείται κατά την προσπάθειά σας να automat Excel

ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο έχει μεταφραστεί χρησιμοποιώντας λογισμικό μηχανικής μετάφρασης της Microsoft και μπορείτε να το διορθώσετε χρησιμοποιώντας την τεχνολογία Community Translation Framework (CTF) (Πλαίσιο μετάφρασης κοινότητας). Η Microsoft παρέχει μηχανική μετάφραση, επεξεργασία μετά τη μηχανική μετάφραση από την κοινότητα και άρθρα μεταφρασμένα από επαγγελματίες προκειμένου να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής βάσης σε πολλές γλώσσες. Τα άρθρα μηχανικής μετάφρασης και αυτά που επεξεργάζονται ύστερα από μηχανική μετάφραση ενδέχεται να περιέχουν σφάλματα στο λεξιλόγιο, στη σύνταξη ή/και στη γραμματική. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες μας. Για περισσότερες πληροφορίες σχετικά με το CTF, μεταβείτε στην τοποθεσία http://support.microsoft.com/gp/machine-translation-corrections/el.

Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη: 307230
Αυτό το αρχείο έχει αρχειοθετηθεί. Προσφέρεται “ως έχει” και δεν θα ενημερώνεται πια.
Συμπτώματα
Κατά την κλήση τουOpenXMLη μέθοδος, ο κώδικάς σας μπορεί να διακοπεί με το ExcelΕισαγωγή XMLπαράθυρο διαλόγου. Απαιτείται παρέμβαση του χρήστη για τον κώδικά σας για να συνεχίσετε. Αυτό το ζήτημα παρουσιάζεται όταν πληρούνται και οι δύο ακόλουθες συνθήκες:
  • Καλείτε τοOpenXMLη μέθοδος από έναν υπολογιστή-πελάτη αυτοματισμού.
  • Έχει δοθεί μια τιμή για τηStyleSheetsη παράμετρος τουOpenXMLΗ μέθοδος.
Προτεινόμενη αντιμετώπιση
Για να επιλύσετε αυτό το ζήτημα, μετασχηματισμού XML πριν να ανοίξετε στο Excel και να παραλείψετε την τιμή για τηStyleSheetsΠαράμετρος. Για να το κάνετε αυτό, χρησιμοποιήστε το Microsoft XML (MSXML) να φορτώσει το XML και XSL σεDOMDocumentαντικείμενα, έτσι ώστε να μπορείτε να μετασχηματισμού XML κατά το χρόνο εκτέλεσης και να αποθηκεύσετε τα αποτελέσματα σε ένα αρχείο. Στη συνέχεια, μπορείτε να ανοίξετε το αρχείο που προκύπτει στο Excel χωρίς την παρέμβαση του χρήστη.
Sub Macro3()    'Load the XML and the XSL (the stylesheet).    Dim oXML As Object, oXSL As Object    Set oXML = CreateObject("MSXML.DOMDocument")    Set oXSL = CreateObject("MSXML.DOMDocument")    oXML.Load "c:\customers.xml"    oXSL.Load "c:\customers.xsl"           'Transform the XML using the stylesheet.    Dim sHTML As String    sHTML = oXML.transformNode(oXSL)            'Save the results to an HTML file.    Open "c:\customers.htm" For Output As #1    Print #1, sHTML    Close #1    'Automate Excel to open the HTML file.    Dim oApp As Excel.Application    Set oApp = CreateObject("excel.application")    oApp.Visible = True    oApp.Workbooks.Open "c:\customers.htm"End Sub				
Κατάσταση
Η Microsoft έχει επιβεβαιώσει ότι πρόκειται για ένα σφάλμα το οποίο παρουσιάζεται στα προϊόντα της, που αναφέρονται στην αρχή αυτού του άρθρου.
Περισσότερες πληροφορίες

Βήματα για την αναπαραγωγή της συμπεριφοράς

  1. Χρησιμοποιώντας ένα πρόγραμμα επεξεργασίας κειμένου, όπως το Notepad.exe, δημιουργήστε τα ακόλουθα αρχεία XML και XSL και να τους αποθηκεύσετε ως C:\Customers.xml και C:\Customers.xsl, αντίστοιχα:C:\Customers.XML
    <?xml version='1.0'?><?xml-stylesheet type='text/xsl' href='customers.xsl'?><Customers>  <Customer>    <CustomerID>ALFKI</CustomerID>    <CompanyName>Alfreds Futterkiste</CompanyName>  </Customer>  <Customer>    <CustomerID>ANTON</CustomerID>    <CompanyName>Antonio Moreno Taqueria</CompanyName>  </Customer></Customers>					
    C:\Customers.xsl
    <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">  <xsl:template match="/">    <HTML>      <BODY>        <TABLE>          <COLGROUP WIDTH="100" ALIGN="CENTER"></COLGROUP>          <COLGROUP WIDTH="200" ALIGN="LEFT"></COLGROUP>          <TD><B>Customer ID</B></TD>          <TD><B>Company</B></TD>          <xsl:for-each select="Customers/Customer">            <TR>              <TD><xsl:value-of select="CustomerID"/></TD>              <TD><xsl:value-of select="CompanyName"/></TD>            </TR>          </xsl:for-each>        </TABLE>      </BODY>    </HTML>  </xsl:template></xsl:stylesheet>					
  2. Στο Excel, ξεκινήστε ένα νέο βιβλίο εργασίας.
  3. Πατήστε το συνδυασμό πλήκτρων ALT+F11, για να ξεκινήσει η Επεξεργασία της Visual Basic (Visual Basic Editor).
  4. Στο διακομιστήINSERTμενού, κάντε κλικ στο κουμπίModuleΓια να εισαγάγετε μια νέα λειτουργική μονάδα κώδικα και στη συνέχεια προσθέστε τον ακόλουθο κώδικα στη λειτουργική μονάδα:
    Sub Macro1()    'Open the XML file and apply the first stylesheet.    Workbooks.OpenXML "C:\customers.xml", Array(1)End SubSub Macro2()    'Automate Excel to open the XML file and apply the first    'stylesheet.    Dim oApp As Excel.Application    Set oApp = CreateObject("excel.application")    oApp.Visible = True    oApp.Workbooks.OpenXML "c:\customers.xml", Array(1)End Sub					
  5. Κλείστε την Επεξεργασία Visual Basic (Visual Basic Editor).
  6. Excel 2002 ή Excel 2003
    • Στο διακομιστήΕργαλείαμενού, κάντε κλικ στο κουμπίMacroκαι, στη συνέχεια, κάντε κλικ στο κουμπίΜακροεντολές. Στη λίστα των μακροεντολών, επιλέξτεMacro1και κάντε κλικ στο κουμπίΕκτέλεση. Σημειώστε ότι ανοίγει το αρχείο XML με το φύλλο στυλ που εφαρμόζεται.
    Excel 2007
    • Στο διακομιστήΟ προγραμματιστήςκαρτέλα, κάντε κλικ στο κουμπίΜακροεντολέςΣτοΚωδικόςΌμιλος. Κάντε κλικ για να επιλέξετε τη μακροεντολή "Macro1" από τη λίστα και στη συνέχεια κάντε κλικ στο κουμπίΕκτέλεση.

      ΣΗΜΕΙΩΣΗΑν υπάρχει ήδη ο φάκελοςΟ προγραμματιστήςκαρτέλα δεν είναι ορατό στην κορδέλα, ακολουθήστε τα εξής βήματα για να ενεργοποιήσετε την καρτέλα:
      1. Κάντε κλικ στην καρτέλαΚουμπί του Microsoft Office, και στη συνέχεια κάντε κλικ στο κουμπίΕπιλογές του Excel.
      2. Κάντε κλικ στην καρτέλαΔημοφιλείςκαρτέλα και, στη συνέχεια, κάντε κλικ για να επιλέξετε τοΕμφανίζεται η καρτέλα "Προγραμματιστής" στην κορδέλαΕπιλογή.
      3. Κάντε κλικOk.
  7. Στο διακομιστήFILEμενού, κάντε κλικ στο κουμπίClose (Κλείσιμο)Για να κλείσετε το αρχείο XML.
  8. Excel 2002 ή Excel 2003
    • Στο διακομιστήΕργαλείαμενού, κάντε κλικ στο κουμπίMacroκαι, στη συνέχεια, κάντε κλικ στο κουμπίΜακροεντολές. Στη λίστα των μακροεντολών, επιλέξτεMacro2και κάντε κλικ στο κουμπίΕκτέλεση. Σημειώστε ότι αυτό το διάστημα τηςΕισαγωγή XMLεμφανίζεται το παράθυρο διαλόγου και σας ζητείται να επιλέξετε το φύλλο στυλ.
    Excel 2007
    • Στο διακομιστήΟ προγραμματιστήςκαρτέλα, κάντε κλικ στο κουμπίΜακροεντολέςΣτοΚωδικόςΌμιλος. Κάντε κλικ για να επιλέξετε τη μακροεντολή "Macro1" από τη λίστα και στη συνέχεια κάντε κλικ στο κουμπίΕκτέλεση.
Αναφορές
Για πρόσθετες πληροφορίες σχετικά με τη χρήση XML με το Microsoft Excel, κάντε κλικ στο παρακάτω αριθμούς άρθρων για να προβάλετε τα άρθρα της Γνωσιακής Βάσης της Microsoft:
288215ΠΛΗΡΟΦΟΡΙΕΣ: Microsoft Excel 2002 και XML
285891ΔΙΑΔΙΚΑΣΙΕΣ: Χρήση της Visual Basic ή ASP για να δημιουργήσετε ένα υπολογιστικό φύλλο XML για το Excel 2002
xml φύλλο στυλ γλώσσας Extensible markup XL2007

Προειδοποίηση: Αυτό το άρθρο έχει μεταφραστεί αυτόματα

Ιδιότητες

Αναγνωριστικό άρθρου: 307230 - Τελευταία αναθεώρηση: 01/12/2015 18:50:56 - Αναθεώρηση: 3.0

Microsoft Office Excel 2007, Microsoft Excel 2002 Standard Edition

  • kbnosurvey kbarchive kbautomation kbbug kbmt KB307230 KbMtel
Σχόλια