Τα πρόσθετα δεν φορτώνονται όταν χρησιμοποιείται η εντολή CreateObject στο Excel

Μεταφράσεις άρθρων Μεταφράσεις άρθρων
Αναγν. άρθρου: 213489 - Δείτε τα προϊόντα στα οποία αναφέρεται το συγκεκριμένο άρθρο.
Ανάπτυξη όλων | Σύμπτυξη όλων

Σε αυτήν τη σελίδα

Συμπτώματα

Όταν έχετε πρόσβαση στο Microsoft Excel ως αντικείμενο αυτοματοποίησης OLE χρησιμοποιώντας την εντολή CreateObject, τα πρόσθετα, τα αρχεία που βρίσκονται στον κατάλογο XLStart και το προεπιλεγμένο νέο βιβλίο εργασίας δεν φορτώνονται.

Αιτία

Όταν επιχειρείτε να φορτώσετε πρόσθετα και αρχεία, το Excel στέλνει ένα μήνυμα στην εφαρμογή που πραγματοποιεί την κλήση, όπως η Visual Basic, ενημερώνοντάς την ότι δεν είναι έτοιμο να αποκριθεί στην αίτηση και ζητώντας της να δοκιμάσει ξανά αργότερα. Η εφαρμογή που πραγματοποιεί την κλήση ενδέχεται να μην μπορεί να χειριστεί αυτή την αίτηση και να συνεχίσει με τις υπόλοιπες εντολές.

Εναλλακτικός τρόπος αντιμετώπισης

Η Microsoft παρέχει παραδείγματα προγραμματισμού μόνο για λόγους επεξήγησης, χωρίς να παρέχει καμία εγγύηση, σιωπηρή ή ρητή. Σε αυτά περιλαμβάνονται, ενδεικτικά, οι σιωπηρές εγγυήσεις εμπορευσιμότητας ή/και καταλληλότητας για συγκεκριμένο σκοπό. Αυτό το άρθρο προϋποθέτει ότι είστε εξοικειωμένοι με τη γλώσσα προγραμματισμού που παρουσιάζεται, καθώς και με τα εργαλεία που χρησιμοποιούνται για τη δημιουργία και τον εντοπισμό σφαλμάτων κώδικα διαδικασιών. Οι μηχανικοί υποστήριξης της Microsoft μπορούν να σας εξηγήσουν τη λειτουργικότητα μιας συγκεκριμένης διαδικασίας. Ωστόσο, δεν θα τροποποιήσουν αυτά τα παραδείγματα για να παράσχουν πρόσθετες λειτουργίες, ούτε θα δημιουργήσουν διαδικασίες, για να καλύψουν τις συγκεκριμένες απαιτήσεις σας.

Για να φορτώσετε ένα πρόσθετο αρχείο κατά την εκτέλεση του Excel ως αντικείμενο αυτοματισμού OLE, φορτώστε το πρόσθετο με μη αυτόματο τρόπο. Ακολουθούν παραδείγματα αυτής της μεθόδου.

Microsoft Office Excel 2007

Sub LoadAddin()

   ' Dimension variable xl as object type.
   Dim xl As Object

   ' Activate Microsoft Excel and assign to variable xl.
   Set XL = CreateObject("Excel.Application")

   ' Open the add-in file you want, in this example, XLQUERY.XLAM.
   XL.Workbooks.Open (XL.librarypath & "\MSQUERY\XLQUERY.XLAM")

   ' If you need to register the functions and commands
   ' contained in a resource (XLL), use the RegisterXLL method.
   ' In the example below, all functions of Analys32.xll are
   ' registered.
   ' XL.RegisterXLL "Analys32.xll"

   ' Run any auto macros contained in the add-in file
   ' Auto macros don't run when you open a file
   ' using the Open method.
   XL.Workbooks("xlquery.xlam").RunAutoMacros 1

   Set XL = Nothing
 End Sub
				

Microsoft Office Excel 2003 και παλαιότερες εκδόσεις του Excel

Sub LoadAddin()

   ' Dimension variable xl as object type.
   Dim xl As Object

   ' Activate Microsoft Excel and assign to variable xl.
   Set XL = CreateObject("Excel.Application")

   ' Open the add-in file you want, in this example, XLQUERY.XLA.
   XL.Workbooks.Open (XL.librarypath & "\MSQUERY\XLQUERY.XLA")

   ' If you need to register the functions and commands
   ' contained in a resource (XLL), use the RegisterXLL method.
   ' In the example below, all functions of Analys32.xll are
   ' registered.
   ' XL.RegisterXLL "Analys32.xll"

   ' Run any auto macros contained in the add-in file
   ' Auto macros don't run when you open a file
   ' using the Open method.
   XL.Workbooks("xlquery.xla").RunAutoMacros 1

   Set XL = Nothing
 End Sub
				

Περισσότερες πληροφορίες

Επειδή το Excel δεν φορτώνει πρόσθετα ή αρχεία στον κατάλογο XLStart όταν καλείται ως αντικείμενο αυτοματισμού OLE, έχετε πλήρη έλεγχο της διαδικασίας φόρτωσης. Εάν θέλετε ένα πρόσθετο να φορτωθεί, μπορείτε να το φορτώσετε με μη αυτόματο τρόπο.

Αυτή η συμπεριφορά σημαίνει επίσης ότι κανένα σφάλμα μακροεντολής, καμία ειδοποίηση κλειδωμένου αρχείου ή κανένα αρχείο μόνο για ανάγνωση δεν θα εμποδίσει τη φόρτωση του Excel όταν καλείται από την εντολή CreateObject. Ένα ακόμη πλεονέκτημα αυτής της συμπεριφοράς είναι ότι το Excel φορτώνει ταχύτερα σε αντίθεση με τη φόρτωση πρόσθετων ή αρχείων.

Αναφορές

Για περισσότερες πληροφορίες σχετικά με τον τρόπο λήψης βοήθειας για την Visual Basic for Applications, κάντε κλικ στον αριθμό του άρθρου παρακάτω, για να προβάλετε το άρθρο της Γνωσιακής βάσης της Microsoft:
226118 Λίστα πόρων που είναι διαθέσιμοι για να σας βοηθήσουν να μάθετε για τον προγραμματισμό της Visual Basic for Applications

Ιδιότητες

Αναγν. άρθρου: 213489 - Τελευταία αναθεώρηση: Κυριακή, 18 Σεπτεμβρίου 2011 - Αναθεώρηση: 2.0
Οι πληροφορίες σε αυτό το άρθρο ισχύουν για:
  • Microsoft Office Excel 2007
  • Microsoft Excel 2002 Standard Edition
  • Microsoft Excel 2000 Standard Edition
  • Microsoft Excel 97 Standard Edition
Λέξεις-κλειδιά: 
kbautomation kbvba kbexpertiseinter kbdtacode kbprb kbprogramming KB213489

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

 

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