यह प्रश्न पहले पूछा गया है , लेकिन हर बार स्वीकृत जवाब केवल फ़ंक्शन विवरण ( VBA6 ) ( VBA7 ) का उपयोग करने के लिए इस्तीफा देना है , लेकिन यह जानकारी वास्तव में टूलटिप के रूप में प्रकट नहीं होती है, इसलिए यह मेरी समस्या का समाधान नहीं करता है।Application.MacroOptions
लक्ष्य
हम सभी की इच्छा किसी भी तरह (VBA, VSTO, या COM ऐड-इन) द्वारा कस्टम फ़ंक्शन को परिभाषित करने में सक्षम होना है और उपयोगकर्ता को फ़ंक्शन और उसके मापदंडों के पॉप-अप / टूल-टिप विवरण का लाभ देना है, जैसा कि प्रत्येक अंतर्निहित Excel फ़ंक्शन के लिए, इनलाइन या सूत्र पट्टी में प्रकट होता है:
इस आवश्यकता के लिए व्यापक रूप से स्वीकृत उत्तर यह है कि यह कस्टम कार्यों के लिए संभव नहीं है, लेकिन मैं उस विश्वास को चुनौती देना चाहता हूं।
समस्या
वर्तमान में, मैंने जिस किसी को भी देखा है, वह फ़ंक्शंस को परिभाषित करने के लिए है (अक्सर उपरोक्त मैक्रोऑर्सेस कॉल का उपयोग करते हुए) ताकि फ़ंक्शन डायलॉग लाते समय (सूत्र पट्टी में fx बटन) उनके फ़ंक्शन और पैरामीटर विवरण नीचे दिए गए दिखाई दें:
जैसा कि आप देख सकते हैं, यह कई मापदंडों के साथ एक जटिल कार्य है। यदि उपयोगकर्ता को इस "फ़ंक्शन तर्क" संवाद के बारे में पता नहीं है और इसे कैसे लाया जाए, और इसके बजाय केवल एक्सेल के मानक टूलटिप से परिचित हैं, तो वे केवल सूत्र नाम देखेंगे और कोई अतिरिक्त मदद नहीं करेंगे:
जिसके साथ उन्हें आवश्यक मापदंडों को सही ढंग से प्रदान करने का कोई मौका नहीं है। (प्रलेखन को पढ़े बिना, बेशक, कोई भी उपयोगकर्ता कभी नहीं करता है।)
अब, एक शक्ति उपयोगकर्ता को पता चल सकता है कि Ctrl+ Shift+ टाइप करने से A, उन्हें फ़ंक्शन मापदंडों की एक स्वत: पूर्ण सूची दी जाएगी जैसे:
लेकिन निश्चित रूप से, हम ऊपर के रूप में एक ही समस्या है जो यह है कि मानक एक्सेल उपयोगकर्ताओं को केवल पहली छवि से डिफ़ॉल्ट व्यवहार के लिए इस्तेमाल किया जाएगा और शायद उस सुविधा को कभी नहीं सीखा होगा।
यह इस बिंदु से स्पष्ट होना चाहिए कि यह पर्याप्त क्यों नहीं है और हम चाहते हैं कि प्रत्येक फ़ंक्शन में क्या बनाया गया है - इन-लाइन टूल-टिप जो उपयोगकर्ता को फ़ंक्शन का उपयोग करने का तरीका बताता है।
छेड़ो
सबसे पहले, मुझे यकीन हो गया है कि यह केवल देशी एक्सेल एप्लिकेशन कार्यों के अलावा संभव नहीं है। ऐड-इन्स और VBA एक्स्टेंसिबिलिटी फीचर्स हैं, और यह टूल-टिप केवल एक्स्टेंसिबल नहीं हो सकता है। लेकिन उस सिद्धांत को विश्लेषण टूलपैक ऐड-इन के अस्तित्व से चुनौती दी जाती है। ज़रूर, यह Microsoft में बनाया गया है, लेकिन ANALYS32.xll एक स्वसंपूर्ण XLL ऐड-इन है, जो VB, C, C ++ और C # में उत्पादित किया जा सकता है। सुनिश्चित करें कि पर्याप्त, इस XLL आवेदन में लोड किया जाता है जब कार्यों यह करता है कि उपलब्ध देशी एक्सेल कार्यों का एक ही उपकरण सुझाव है:
निश्चित रूप से अगर यह जानकारी किसी तरह से इस XLL फ़ाइल में एन्कोड की गई है और Excel में पारित हो गई है, तो इसे हमारे अपने ऐड-इन्स के साथ दोहराने का एक तरीका है? मैं अब इस बिंदु पर हूं जहां मैं खुद को विघटित करने के बारे में थोड़ा पढ़ाना शुरू करने जा रहा हूं और यह देखने के लिए कि क्या मैं विश्लेषण टूलपैक में जो कुछ भी चल रहा है, उसे रिवर्स-इंजीनियर कर सकता हूं।
आप कैसे मदद कर सकते है
मुझे लगभग निश्चित है कि मैंने इस समस्या के बारे में सार्वजनिक रूप से उपलब्ध सभी जानकारी पर शोध किया है। अगर किसी को कुछ पता है जो मुझे नहीं पता है कि इसके साथ मदद कर सकते हैं, तो झंकार करने के लिए स्वतंत्र महसूस करें। मैं रिवर्स-इंजीनियरिंग संकलित dll / xlls से बहुत अपरिचित हूं, इसलिए यदि किसी को लगता है कि पॉपिंग का विश्लेषण32 की अपनी स्थानीय प्रति खोलना है। xll यह पता लगाना कि यह कस्टम फ़ंक्शन परिभाषाओं के साथ क्या हो रहा है, मैं बहुत मजबूर होऊंगा। अन्यथा, मैं बस इस में खुद को खोदता रहूंगा जब तक कि मैं सभी मृत सिरों को नहीं मारूंगा और जो मुझे मिल रहा है उसे वापस रिपोर्ट करें।