2012-08-15 19 views
6

के कारण Office सर्विस पैक 3.0 के कारण एक्सेल/वीबीए स्वचालन त्रुटियां सभी नवीनतम विंडोज अपडेट स्थापित करने के बाद मेरा एक्सेल वीबीए कोड पहले मॉड्यूल की शुरुआत में एक स्वचालन त्रुटि दिखा रहा है। इसमें कुछ रूपों के साथ-साथ वीबीए कोड के कई मॉड्यूल भी शामिल हैं। हालांकि, फॉर्म (और संबंधित कोड) को हटाते समय सबकुछ ठीक है।फॉर्म

कुछ अन्य विंडोज अपडेट के बाद एक साल पहले भी यही बात हुई। फिर .exd फ़ाइलों को हटाने से चाल चल रही थी, लेकिन वर्तमान अपडेट (सर्विस पैक 3 सहित) अलग-अलग प्रतीत होते हैं।

क्या चल रहा है और मैं फ़ॉर्म को कैसे काम कर सकता हूं? सभी कोड अपरिवर्तित हैं और पिछले सभी विंडोज़/ऑफिस अपडेट्स से बच गए हैं। विंडोज 7 चल रहा है (Vista मशीन पर भी हो रहा है) और Office 2007.

उत्तर

16

मैं इसे Visual Basic and Crystal Reports के साथ बहुत कुछ देखता था; या तो खराब तैनाती या DLL Hell के कारण।

तो, मेरा अनुमान है कि यह कोड नहीं है लेकिन शायद आप तीसरे पक्ष के नियंत्रण (ओसीएक्स, डीएलएल) का उपयोग कर रहे हैं।

अपने संदर्भों की जांच करें (वीबीए आईडीई में, टूल्स और संदर्भ क्लिक करें) और यह देखने के लिए कि प्रत्येक डीएलएल कहां इंगित कर रहा है।

देखें कि पुस्तकालयों में से कोई भी तारीख एक काम करने वाली मशीन से अलग है और आप अपराधी को पा सकते हैं।


संपादित

ओपी ऊपर चरणों का पालन करके समस्या का पता चला।

इस विशेष मुद्दे के लिए ठीक MSCOMCTL.OCX पंजीकरण रद्द करना है:

regsvr32 /u mscomctl.ocx 

तो यह रजिस्टर:

regsvr32 mscomctl.ocx 
+0

तुलना करने के लिए सीधे नहीं आगे ठीक कर सकता है, लेकिन केवल मुख्य अंतर यह मैंने पाया कि "माइक्रोसॉफ्ट विंडोज आम को नियंत्रित करता है 6.0 (SP6) MSCOMCTL.OCX जो दिनांकित है 6/6/12 अपडेटेड (और काम नहीं कर रहे) मशीन और 4/11/11 को "पुराने" पर। किसी तीसरे पक्ष के नियंत्रण का उपयोग नहीं करते हैं और सभी विंडोज़ अपडेट होने तक ठीक काम करते हैं। – Rob

+0

@Rob मुझे लगता है कि फ़ाइलों की तिथियों की तुलना करना होगा बहुत सीधे आगे, लेकिन क्या evs। [Mscomctl.ocx] (http://support.microsoft.com/kb/2597986) कल (14 अगस्त) से एक सुरक्षा अद्यतन में था और आप कहते हैं कि आपने अभी नवीनतम अपडेट इंस्टॉल किए हैं कंप्यूटर। यह मुद्दा हो सकता है, ऐसा नहीं हो सकता है, लेकिन चूंकि यह पिछले कुछ घंटों में बदल गया है, तो आप झुकते हैं टी विशिष्ट अद्यतन को अनइंस्टॉल करने या नए ओसीएक्स को अनधिकृत करने और फिर "काम करने वाले नियंत्रण" को पंजीकृत करने का प्रयास करना चाहते हैं। यह देखने के लिए शायद पांच मिनट लगेंगे कि यह आपका मुद्दा है या नहीं। – ray

+0

तुलनात्मक तिथियां अजीब थीं क्योंकि मशीनें समान नहीं थीं और कुछ डेटा टिकटों पर निर्भर करता है कि वास्तव में पहले अपडेट कब चलते थे। जैसा कि आप कहते हैं कि पंजीकरण पूरी तरह से पंजीकरण और पंजीकरण कर रहा है। – Rob

0

हम एक ही समस्या है। हमारे ऐड-इन में, हम एक्सेल के रूप में एक वैरिएबल की घोषणा के लिए समस्या का पता लगाने में सक्षम थे। आवेदन। इस ऑब्जेक्ट का संदर्भ Excel.exe फ़ाइल में है, इसलिए यह बहुत अस्पष्ट है कि कौन सी फाइलें गड़बड़ हुई हैं।

मशीनों है कि है इस समस्या को सब जल्दी आज सुबह अपडेट किए गए थे (15 अगस्त 2012) निम्न अपडेट के साथ (लिंक पोस्ट नहीं एक नया उपयोगकर्ता के रूप में, के लिए खेद है, मैं सीमित पोस्ट प्रति केवल दो के लिए कर रहा हूँ):

Security Update for Microsoft Office 2007 suites (KB2596615)

Security Update for Microsoft Office 2007 suites (KB2596754)

माइक्रोसॉफ्ट ऑफिस के लिए सुरक्षा अद्यतन 2007 सुइट्स (KB2596856)

सुरक्षा माइक्रोसॉफ्ट ऑफिस 2007 सुइट के लिए अद्यतन (KB2687441)

माइक्रोसॉफ्ट ऑफिस आउटलुक 2007 रद्दी ईमेल फ़िल्टर (KB2687400) के लिए अद्यतन

विंडोज दुर्भावनापूर्ण सॉफ़्टवेयर निष्कासन टूल 64 - अगस्त 2012 (KB890830)

वर्तमान में, हम नहीं मिला है MSDN साइट पर किसी भी जानकारी है कि इसे साफ़ कर सकता है। हम अभी भी इसे आगे अलग करने की कोशिश कर रहे हैं।

0

मुझे एक ही समस्या थी। मुझे अपने ऐड-इन लोडिंग के साथ एक अनिर्दिष्ट त्रुटि खोलने का एक्सेल मिला। अतीत में, सी: \ दस्तावेज़ों और सेटिंग्स \ * USERNAME% \ अनुप्रयोग डेटा \ Microsoft \ Forms \ में * .exd फ़ाइलों को हटाने से चाल चल रही थी, लेकिन इस बार नहीं।
जब मैंने अपने एडिन में फॉर्म खोलने का प्रयास किया, तो मुझे एक अलग त्रुटि मिली और मैं फॉर्म नहीं खोल सका। मैं अद्यतन से पहले पिछली रात वापस रोलिंग समाप्त हो गया और सबकुछ फिर से काम करता है।

0

Office 2007 Excel के लिए अद्यतन करने के बाद आज यहां एक ही समस्या है। विचित्र रूप से, अद्यतन के बावजूद एक प्रणाली में कोई समस्या नहीं थी - नवीनतम प्रणाली। तो कुछ निरीक्षण के बाद, मैंने देखा कि इस परेशानी मुक्त प्रणाली में MSCOMCTL.OCX का अलग संस्करण विंडोज़ \ sysWOW64 में अन्य था। यहां इस ActiveX का विवरण दिया गया है: 1,070,152 बाइट बनाया गया: 6/3/2012 संशोधित: 6/6/2012 उत्पाद संस्करण: 6.01.9834 इसलिए मैंने इसे किसी समस्या के लिए कॉपी किया और यह चाल चल गई।

इसके अलावा, आप अगर इन आवेदन एक्सटेंशन खिड़कियों में मौजूद हैं जांच करना चाह सकते \ SysWOW64 या windows \ 32-बिट प्रणाली FM20.dll (संशोधित तिथि के लिए system32: 2011/07/07, संस्करण 12.0.6604.1000, 1.13 एमबी) एफएम 20ENU.DLL (संशोधित दिनांक: 10/24/2008, संस्करण 12.0.6413.1000, 32.3 केबी) यह सुनिश्चित नहीं है कि आप इन्हें कहां डाउनलोड कर सकते हैं। मैं उन्हें अन्य प्रणालियों से cannibalized।

2

ऑटोकैड के लिए वीबीए के साथ एक ही समस्या। मेरे मामले में, regsvr32 के साथ नया mscomctl.ocx पंजीकृत करना समस्या को ठीक करने के लिए पर्याप्त था।

+0

वास्तव में, आपको केवल "regsvr32/u mscomctl.ocx" और "regsvr32 mscomctl.ocx" व्यवस्थापक के रूप में चलाया गया है। – Rob

0

पिछली रात अपडेट में से एक के बाद हमारे सभी टर्मिनल सर्वर पर एक ही समस्या थी। Mscomctl.ocx को पंजीकृत करने से सभी उपयोगकर्ताओं के लिए समस्या ठीक हो गई।

5

यहां एक ही समस्या है, mscomctl.ocx को पंजीकृत करने के बाद पूरी तरह हल हो गई समस्या!

Windows 7 या 2008 के लिए

- cmd.exe चलाने के लिए "व्यवस्थापक के रूप में" याद है, और उसके बाद: 32 विंडोज सिस्टम के लिए

: regsvr32 c: \ windows \ system32 \ MSCOMCTL.OCX

के लिए

64 बिट विंडोज सिस्टम: regsvr32 c: \ windows \ syswow64 \ MSCOMCTL.OCX

0

संयुक्त राष्ट्र और MSCOMCTL.OCX मेरे लिए चाल किया था दर्ज की:

  1. एक व्यवस्थापकीय-स्तर कमांड प्रॉम्प्ट खोलें। स्टार्ट क्लिक करें, और रन कमांड लाइन में रन टाइप करें। विंडोज विस्टा और विंडोज 7 पर आप देखेंगे सीएमडी.एक्सईई त्वरित खोज सूची में दिखाई देता है। राइट क्लिक करें CMD.EXE और व्यवस्थापक के रूप में चलाएं क्लिक करें। एक ब्लैक कमांड प्रॉम्प्ट खुलता है।

  2. 64-बिट मशीन पर, लिखते हैं, तो निम्नलिखित: regsvr32.exe/u C: \ Windows \ SysWOW64 \ MSCOMCTL.OCX

हिट ENTER तो regsvr32.exe सी टाइप करें: \ Windows \ SysWOW64 \ MSCOMCTL.OCX यदि 32-बिट मशीन पर, निम्न टाइप करें: regsvr32.exe/u सी: \ Windows \ System32 \ MSCOMCTL.OCX हिट ENTER टाइप करें तो
regsvr32.exe C: \ Windows \ System32 टाइप करें \ MSCOMCTL।ओसीएक्स आपका कार्यालय प्रोग्राम ऐसा करने के बाद फिर से काम करना चाहिए।

कृपया यह भी देखें: http://blogs.technet.com/b/the_microsoft_excel_support_team_blog/archive/2012/08/15/quot-unspecified-automation-error-quot-after-applying-ms12-060.aspx

0

एक बंदूक का बेटा ... मैं फिर से पंजीकृत C: \ Windows \ System32 \ MSCOMCTL.OCX और सब कुछ फिर से काम करता है। उन सभी के लिए बहुत बहुत धन्यवाद जो इंगित करते हैं।

2

हम mscomctl.ocx को फिर से पंजीकृत करके समस्या का समाधान नहीं कर सके। लेकिन हमने इसे "प्रोग्रेस बार ऑब्जेक्ट फॉर्म" को हटाकर हल किया, जिसमें mscomctl.ocx को कॉल किया गया ... हमने इसे application.statusbar से बदल दिया।