में ऐरे फ़ंक्शन मेरे पास वीबीए में एक फ़ंक्शन है जो तारों की एक सरणी उत्पन्न करता है। यह एक और वीबीए समारोह से बुलाया जाने पर ठीक काम करता है, लेकिन जब वर्कशीट से नहीं कहा जाता है।एक्सेल वीबीए
यह ऐसे इस्तेमाल किया जाना चाहिए:
- चयन A1: A3
- सूत्र बार
=Test()
में लिखने, तोCtrl-Shift-Enter
मारा यह एक सरणी समारोह - A1
A
शामिल करना चाहिए बनाने के लिए, A2 चाहिएB
, और ए 3 मेंC
जब मैं वास्तव में यह कोशिश करता हूं, तो पु सरणी के सभी तीन कोशिकाओं में टी A
। मैं सरणी की विभिन्न कोशिकाओं में Test
द्वारा वापस लौटा डेटा कैसे प्राप्त कर सकता हूं?
उन लोगों के लिए जो इसे देखना चाहते हैं, यहां फ़ंक्शन का कोड है। ध्यान रखें, फ़ंक्शन ठीक काम करता है जब अन्य कार्यों से बुलाया जाता है।
Function Test() As String()
Dim a(1 To 3) As String
a(1) = "A"
a(2) = "B"
a(3) = "C"
Test = a
End Function
मुझे नहीं पता था कि सरणी की डिफ़ॉल्ट दिशा दाईं ओर दाईं ओर थी। – Joe
दुर्भाग्य से, एक्सेल को या तो क्षैतिज या लंबवत सरणी भरने के लिए एक सरल स्वचालित तरीका प्रतीत नहीं होता है। हालांकि, वहां कुछ चाल हो सकती हैं। –
यूप, जैसा कि @andy होलाडे बताते हैं, चिप पियरसन ने क्षैतिज/ऊर्ध्वाधर दुविधा को भी समझ लिया है। –