प्रकाशक मैक्रो सभी दस्तावेजों में चलता है


1

मैंने प्रकाशक में एक मैक्रो लिखा है और इसे अपने क्विक एक्सेस बार में जोड़ा है। दुर्भाग्य से, मैक्रो केवल उस दस्तावेज़ में चलता है जिसने इसे बनाया था। अन्य सभी दस्तावेजों में, बटन कुछ भी नहीं करता है।

क्या सभी प्रकाशक दस्तावेजों में मैक्रो को चलाने का एक तरीका है? मुझे पता है कि एक्सेल मैक्रोज़ के पास उन्हें (व्यक्तिगत कार्यपुस्तिका, यह कार्यपुस्तिका, ET.c) संग्रहीत करने का एक विकल्प है जो इस व्यवहार को बदलता है। क्या प्रकाशक के लिए एक समान विकल्प है?


1
क्या वहाँ एक है ऐड-इन्स में बटन डेवलपर रिबन का टैब यदि हां, तो उत्तर "हां" है।
Mathieu Guindon

वहाँ है, लेकिन यह एक .dll या a -exe स्वीकार करता है। मैं मान रहा हूँ कि .dll को मैक्रो संकलित करने का एक सरल तरीका है?
ale10ander

1
ज़रुरी नहीं। आप एक VSTO ऐड-इन चाहते हैं, जो C # या VB.NET में लिखा गया है और प्रकाशक API को संदर्भित कर रहा है। सरल, "सरल" के कुछ मूल्यों के लिए ;-)
Mathieu Guindon

धन्यवाद। यह आदर्श समाधान नहीं है, लेकिन यह काम करना चाहिए। यदि आप इसे उत्तर के रूप में लिखते हैं, तो मैं इसे स्वीकार करूंगा।
ale10ander

जवाबों:


1

यदि कोई "प्रकाशक ऐड-इन" दस्तावेज़ प्रकार नहीं है, तो आपको विजुअल स्टूडियो के साथ COM ऐड-इन C # या VB.NET लिखना होगा (यानी VBA में नहीं)।

MSDN ब्लॉग पर यह लेख पहुँच के लिए ऐड-इन बनाने के बारे में बताया गया है:

VSTO IDTExtensibility2- आधारित COM ऐड-इन्स का समर्थन करने वाले अधिकांश Office अनुप्रयोगों के लिए ऐड-इन्स का समर्थन करता है, जो है: Excel, InfoPath, Outlook, PowerPoint, प्रोजेक्ट, Visio और Word, लेकिन एक्सेस, फ्रंटपेज, प्रकाशक या SharePoint डिज़ाइनर के लिए नहीं

यह प्रक्रिया प्रकाशक के लिए बहुत समान होगी: प्राथमिक इंटरॉप असेंबली (पीआईए) का संदर्भ लें Microsoft.Office.Interop.Publisher.Application वर्ग, और आप बहुत अधिक सेट हैं - बस अपने रिबन एक्सटेंशन डिज़ाइन करें, अपनी कार्यक्षमता को लागू करें, संकलन करें, रजिस्टर करें, और आप ऊपर हैं।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.