निम्नलिखित कोड Powershell V1 में एक अपवाद (Excel 2007) फेंकता पुस्तकालय वैध नहीं है (स्पेनिश से अनुवादित)। वर्ड के लिए एक समान लिपि बस ठीक काम करता है।अपवाद Powershell के साथ Excel 2007 स्वचालित जब Workbooks.Add बुला()
उत्तर
MS Help and Support Article 320369 में प्रस्तावित समाधानों में से एक से Powershell के लिए अनुकूलित।
जब आप किसी कंप्यूटर जहां क्षेत्रीय सेटिंग कार्यालय की वर्तमान भाषा संस्करण से मेल नहीं खाते के लिए इन समाधानों में से एक का उपयोग करें, आप कैसे से परिचित होना चाहिए:
एक ही लेख से$ci = new-object system.globalization.cultureinfo "en-US" $e = New-Object -COM "Excel.Application" $e.Visible = $True $e.UserControl= $True $books = $e.Workbooks $books.PSBase.GetType().InvokeMember(` "Add", ` [system.reflection.bindingflags]::InvokeMethod, ` $null, $books, $null, $ci)
एक्सेल व्यवहार करता है और कैसे Excel डेटा की व्याख्या करेगा जो के लिए एक विशिष्ट लोकेल के लिए स्वरूपित किया जा सकता है।
कार्यालय इंटरऑप असेंबली में यह समस्या प्रतीत होती है जब वर्तमान संस्कृति एन-यूएस नहीं है। स्पष्ट कार्यवाही संस्कृति को स्थापित करना है।
इंटरैक्टिव कंसोल पर एक ही कमांड के रूप में पूरी चीज को चलाने के लिए महत्वपूर्ण है, क्योंकि PowerShell V1 हमेशा प्रत्येक कमांड आमंत्रण के लिए एक नया धागा बनाता है।
PS C:\Users\jachymko> $e = new-object -com excel.application
PS C:\Users\jachymko> $e.workbooks.add()
Exception calling "Add" with "0" argument(s): "Old format or invalid type library. (Exception from HRESULT: 0x80028018 (TYPE_E_INVDATAREAD))"
At line:1 char:17
+ $e.workbooks.add <<<<()
+ CategoryInfo : NotSpecified: (:) [], MethodInvocationException
+ FullyQualifiedErrorId : ComMethodTargetInvocation
PS C:\Users\jachymko> & {
>> [threading.thread]::CurrentThread.CurrentCulture = 'en-US'
>> $e = new-object -com excel.application
>> $e.workbooks.add()
>> $e.visible=1
>> }
>>
मैं इसे बाद में आज़मा दूंगा, लेकिन मैंने सोचा था कि पीएसवी 1 ने केवल एक प्रक्रिया और एक थ्रेड का उपयोग किया है? ... – guillermooo
पावरशेल एक बार में एक रनस्पेस प्रति एकल निष्पादन थ्रेड का उपयोग करता है, लेकिन थ्रेड प्रत्येक कमांड के बाद निकलता है और इसके लिए फिर से शुरू होता है अगला। मेरा मानना है कि इसे होस्टिंग एपीआई का उपयोग करके वी 2 में नियंत्रित किया जा सकता है (आप इसे कॉलिंग थ्रेड का उपयोग कर सकते हैं या कमांड के बीच समर्पित थ्रेड को रीसायकल कर सकते हैं) –
आपका समाधान मेरे लिए काम नहीं कर रहा है ... मुझे एक ही त्रुटि मिल रही है। – guillermooo
कार्यपुस्तिका खोलने का प्रयास करते समय मुझे यह समस्या थी। मैंने यह लाइन जोड़ा:
[threading.thread]::CurrentThread.CurrentCulture = 'en-US'
- 1. Excel 2007
- 2. Excel 2007 PageSetup.FitToPagesWide मुद्दा
- 3. पावरशेल के साथ स्वचालित वर्चुअल पीसी 2007?
- 4. स्वचालित Excel 2010 एफ #
- 5. Excel 2007 के साथ ऑफिस ऑटोमेशन करने के लिए कोशिश कर रहा है, लेकिन Excel 2003 उपयोग करना जारी रखता
- 6. जब powershell
- 7. मुक्केबाजी जब बुला toString()
- 8. स्वचालित अपवाद
- 9. जब बुला जारी रहती है
- 10. Excel
- 11. VBA का उपयोग कैसे करें Excel 2007 पारदर्शी
- 12. सी # से आउटलुक 2007 - COM अपवाद, TYPE_E_LIBNOTREGISTERED
- 13. आउटलुक 2007 ऐड-इन अपवाद हैंडलिंग
- 14. वैकल्पिक पैरामीटर जब एक XSL टेम्पलेट बुला
- 15. Excel
- 16. Textviews जब setText बुला परिवर्तन नहीं करते()
- 17. Excel
- 18. आशुलिपि जब सी # में सामान्य तरीकों बुला
- 19. पीएचपी उत्पन्न csv फ़ाइल Excel में ब्रिटेन के एक पाउंड चिह्न (£) के लिए एक £ प्रदर्शित 2007
- 20. Excel
- 21. डी 2007 के साथ अपवाद ब्लॉक से हल्ट (एन) के साथ एक त्रुटि कोड कैसे वापस करें?
- 22. अपवाद जब एमएस एक्सेस
- 23. OCaml: Unix.getlogin साथ अनपेक्षित अपवाद जब
- 24. बदलने जब मैं powershell और सेट एसीएल के साथ एक नया filesystemaccess नियम सेट powershell साथ अनुमतियाँ बच्चों
- 25. एक्सेल 2003 में Excel 2003
- 26. Excel
- 27. Excel
- 28. जब आप "स्वचालित"
- 29. घटना जब Word 2007 विषय बदलता है
- 30. powershell 2.0 कोशिश पकड़ कैसे अपवाद
क्या विधि जोड़ें उनमें से एक वैकल्पिक पैरामीटर लेता है? यदि ऐसा है, तो आपको Type.EmptyType या जो भी हो, आपूर्ति करनी पड़ सकती है। इसे सी # से कॉल करने के लिए देखें (जिसमें v4.0 तक कोई वैकल्पिक पैरामीटर समर्थन नहीं है)। –
मेरे अनुभव में, Office संस्करण के आधार पर वैकल्पिक पैरामीटर के लिए गुम प्रकार का उपयोग करने की आवश्यकता नहीं है, लेकिन उदाहरण के लिए Word 2007 को Office XP के विपरीत, पीएस में [ref] के रूप में पारित होने की आवश्यकता होती है। – guillermooo