यह पोस्ट लिंक बनाने के बिना एक्सएलएएम इंस्टॉल करने के बारे में है। (हर कोई लिंक से नफरत करता है)। तुच्छ ऐड पर विचार करें: एक मॉड्यूल मेंएक्सएलएएम/एक्सएलए एडिन्स: क्या कोई बेहतर तरीका है?
Public Function UDF_HELLO(x)
UDF_HELLO = "Hello " & x
End Function
रखें इस कोड को और कुछ नहीं और के रूप में डेस्कटॉप पर "Hello.xlam" बचाने (और नहीं डिफ़ॉल्ट में addins फ़ोल्डर उत्कृष्टता)। इसके बाद, HELLO.XLAM अभी भी खुला है, जबकि, सूत्र
=UDF_Hello("world")
सेल A1 में, जो केवल "हैलो दुनिया" को प्रदर्शित करता है कि सेल में के साथ एक नया XLSX कार्यपुस्तिका बनाएँ। कार्यपुस्तिका को सहेजें और एक्सेल से बाहर निकलें। अब, यदि आप XLAM के बिना कार्यपुस्तिका को फिर से खोलते हैं, तो Excel "अन्य स्रोतों के लिंक ..." के बारे में शिकायत करेगा। आप क्लिक करें या नहीं "अपडेट" या "अपडेट न करें", एक्सेल इस तरह सेल A1 में सूत्र वध करना होगा:
='C:\Documents and Settings\tpascale\Desktop\Hello.xlam'!UDF_Hello("world")
अक्सर इस "मजबूर-लिंकेज" वांछनीय नहीं है। मेरे कंप्यूटिंग पर्यावरण में बहुत सारे विज्ञापन-विश्लेषण हैं और दिन की समस्या को हल करने के लिए हम प्रत्येक एक्सएलएएम पर एक स्थापित नियम लागू करने का कोई मतलब नहीं है। मैं सिर्फ उपयोगकर्ताओं को एक्सएलएएम फाइलों को सौंपना चाहता हूं और उन उपयोगकर्ताओं को उन्हें खोलने के लिए उन्हें खोलने देना चाहता हूं, बिना किसी गलत गलत कदम के बारे में चिंता करने के लिए उनके सूत्रों को उलझन में डाल देना।
प्रश्न:
वहाँ निर्देश देने के लिए एक्सेल कभी UDFs के लिए बाहरी लिंक के निर्माण के लिए, और बस अन्यथा अगर वे लोड कर रहे हैं UDFs का उपयोग करें और #VALUEs वापस जाने के लिए कोई तरीका है?
मुझे पता है कि में VB.Net या सी # COM दिखाई कार्यों बनाने के लिए। इन्हें वीबीए से बुलाया जा सकता है लेकिन फॉर्मूला बार से नहीं। फ़ॉर्मूला बार से कॉल करने योग्य उन्हें पाने का सबसे आसान तरीका क्या है? क्या यह आपका एक्सेल-डीएनए है या कुछ और? विजुअल स्टूडियो सभी COM-interop सामान उत्पन्न करने का अच्छा काम करता है - लेकिन जहां तक मुझे पता है कि आपके लिए कुछ भी उत्पन्न नहीं करता है w.r.t. एक्सेल एडिनस। – tpascale
माना जाता है कि एक्सेल में यूडीएफ के रूप में उपलब्ध .NET कार्यों को बनाने का सबसे सरल (और केवल एमएस-समर्थित) तरीका ऑटोमेशन ऐड-इन बनाना है: http://www.codeproject.com/KB/COM/excelnetauto.aspx। लेकिन ऑटोमेशन ऐड-इन्स धीमे हैं, मशीन पर पंजीकृत होने की आवश्यकता है, और फ़ंक्शन विवरण, श्रेणियां इत्यादि जोड़ने के लिए सीमित समर्थन है। एक्सेल-डीएनए उन सभी समस्याओं को हल करता है, जो आपको एक एकल .xll के साथ छोड़ देता है जिसके लिए उपयोगकर्ता कोई इंस्टॉलेशन नहीं कर सकते हैं बस खोलने के लिए क्लिक करें। यदि आपके पास पहले से ही विजुअल स्टूडियो स्थापित है और पता है कि कोई विशेषता क्या है, तो आपको एक्सेल-डीएनए का उपयोग करना आसान लगेगा और बस काम करता है। – Govert
ठीक है बहुत धन्यवाद - मैं एक्सेल डीएनए की कोशिश करूँगा। मैंने आपके "एक्सेल डीएनए हैलो वर्ल्ड फंक्शन" पर एक त्वरित नज़र डाली - बहुत अच्छा। आदर्श रूप से मैं सिर्फ आपके डीएनए एक्सएमएल में वीबीए कोड लपेटूंगा, कोई आईडीई नहीं - बहुत सरल - सिवाय इसके कि मेरे यूडीएफ वीबीए कक्षाओं पर भरोसा करते हैं। क्या वे भी इस हल्के तरीके से लपेट सकते हैं? यदि हां, बढ़िया, यदि नहीं, तो मैं शायद बुलेट काट दूंगा और डीएनए के साथ .NET में परिवर्तित कर दूंगा। – tpascale