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

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 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 Sub
    
    Sub 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

Ιδιότητες

Αναγν. άρθρου: 307230 - Τελευταία αναθεώρηση: Τρίτη, 28 Σεπτεμβρίου 2010 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Office Excel 2007
  • Microsoft Excel 2002 Standard Edition
Λέξεις-κλειδιά: 
kbautomation kbbug kbmt KB307230 KbMtel
Μηχανικά μεταφρασμένο
ΣΗΜΑΝΤΙΚΟ: Αυτό το άρθρο είναι προϊόν λογισμικού μηχανικής μετάφρασης της Microsoft και όχι ανθρώπινης μετάφρασης. Η Microsoft σάς προσφέρει άρθρα που είναι προϊόντα ανθρώπινης αλλά και μηχανικής μετάφρασης έτσι ώστε να έχετε πρόσβαση σε όλα τα άρθρα της Γνωσιακής Βάσης μας στη δική σας γλώσσα. Ωστόσο, ένα άρθρο που έχει προκύψει από μηχανική μετάφραση δεν είναι πάντα άριστης ποιότητας. Ενδέχεται να περιέχει λεξιλογικά, συντακτικά ή γραμματικά λάθη, όπως ακριβώς τα λάθη που θα έκανε ένας μη φυσικός ομιλητής επιχειρώντας να μιλήσει τη γλώσσα σας. Η Microsoft δεν φέρει καμία ευθύνη για τυχόν ανακρίβειες, σφάλματα ή ζημίες που προκύψουν λόγω τυχόν παρερμηνειών στη μετάφραση του περιεχομένου ή χρήσης του από τους πελάτες της. Επίσης, η Microsoft πραγματοποιεί συχνά ενημερώσεις στο λογισμικό μηχανικής μετάφρασης.
Η αγγλική έκδοση αυτού του άρθρου είναι η ακόλουθη:307230

Αποστολή σχολίων

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com