मेरे पास वीबीए (जो एक्सेल 2007 वर्कबुक में रहता है) में निम्न कोड है:.NET में वीबीए फ़ंक्शन से रिटर्न वैल्यू एक्सेस करें?
Public Function Multiply(a As Double, b As Double) As Double
Multiply = a * b
End Function
अगर मैं अन्य वीबीए कोड से गुणा करता हूं, तो यह सही मान देता है। हालांकि, जब मैं सी #:
var excel = new Application {Visible = true};
excel.Workbooks.Open(filename);
var returned = excel.Run("Sheet1.Multiply", (Double) a, (Double) b);
से गुणा करता हूं ... गुणा होता है (मैं वीबीए में मल्टीप्ली फ़ंक्शन में ट्रेसिंग जोड़कर इसे सत्यापित कर सकता हूं) लेकिन लौटाया गया मूल्य मेरे सी # कोड में उपलब्ध नहीं है ; returned
हमेशा null
है।
क्या कोई मुझे बता सकता है कि मेरे सी # कोड से गुणा करने के वापसी मूल्य पर कैसे पहुंचे?
मैं सेल के मान को वापसी मूल्य पर सेट करने और सी # से उस सेल के मान को पढ़ने के लिए मल्टीप्ली() को संशोधित करके इस पर काम करने में सक्षम हूं। बदसूरत लेकिन यह काम करता है। –
कोई विचार यह मॉड्यूल से क्यों काम करता है लेकिन चादर से नहीं? – anakic
कोई भी मुझे डर नहीं है। मैंने वास्तव में 2011 से माइक्रोसॉफ्ट सामान पर कोई महत्वपूर्ण काम नहीं किया है, इसलिए शायद यह अन-उत्तर देने जा रहा है जब तक कि कोई और मदद नहीं कर सकता ... –