2012-05-07 8 views
7

में वापसी प्रकार को कैसे ढूंढें मेरे पास एक एमएस एक्सेस एप्लिकेशन है और रिटर्न प्रकार का फ़ंक्शन ढूंढने में समस्या है। क्या वस्तु का रिटर्न प्रकार खोजने का कोई तरीका है? मेरे पास टाइप मिस्चैच त्रुटि है।वीबीए

उत्तर

12

यदि यह एक अंतर्निहित फ़ंक्शन है, तो एक्सेस सहायता विषय देखें।

यदि यह उपयोगकर्ता द्वारा परिभाषित फ़ंक्शन है, तो इसकी परिभाषा की जांच करें।

यदि आप न तो कर सकते हैं, तो TypeName() फ़ंक्शन का उपयोग करें ताकि आपको YourFunction() द्वारा लौटाया गया डेटा प्रकार बताने के लिए।

Debug.Print TypeName(YourFunction()) 

YourFunction() तो रिटर्न एक प्रकार, TypeName() आप संस्करण उप प्रकार बता देंगे।

हेनज़ी ने के बजाय VarType() का सुझाव दिया। मैं आदत से TypeName() तक पहुंचता हूं क्योंकि यह मेरे लिए तेज़ है, और मैं शायद ही कभी इसकी सीमाओं से चिंतित हूं। हालांकि मैं हेनज़ी से सहमत हूं; VarType() बेहतर है।

जेपी। दो अन्य उपयोगी सुझावों की पेशकश की। सबसे पहले, आप एक साधारण प्रक्रिया बना सकते हैं जो संस्करण चर घोषित करता है और चर के लिए आपके फ़ंक्शन का रिटर्न मान असाइन करता है। फिर पहले Debug.Print लाइन पर F9) के साथ एक अस्थायी ब्रेक पॉइंट जोड़ें, प्रक्रिया चलाएं, प्रक्रिया के अनुसार F8 का उपयोग करके लाइन के माध्यम से स्थानांतरित करने के लिए, और स्थानीय विंडो में चर के मान की निगरानी करें। (वीबी संपादक के मुख्य मेनू से कि विंडो खोलें देखें -।> स्थानीय लोगों विंडो)

Public Sub examine_YourFunction() 
    Dim varFoo As Variant 
    Debug.Print "start" 
    varFoo = YourFunction() 
    Debug.Print varFoo 
End Sub 

और दूसरा, बिल्ट-इन कार्य एक वापसी प्रकार है के लिए, आप लाभ Intellisense के रूप में वापसी प्रकार देखने के लिए ले जा सकते हैं आप फ़ंक्शन का नाम और/या पैरामीटर टाइप कर रहे हैं।

+3

+1, बहुत अच्छी सलाह। यदि आपको रनटाइम पर टाइप चेक करने की आवश्यकता है, तो मैं [VarType फ़ंक्शन] (http://office.microsoft.com/en-us/access-help/vartype-function-HA001228932.aspx) का उपयोग करने का सुझाव दूंगा (जादू तारों से बचने के लिए)। – Heinzi

+0

+ 1 हेनज़ी के साथ सहमत हैं :) –

+1

आप एक वैरिएंट वेरिएबल भी घोषित कर सकते हैं, फ़ंक्शन चला सकते हैं और वैरिएबल पर इसका रिटर्न वैल्यू असाइन कर सकते हैं, फिर लोकल विंडो का उपयोग कर वैरिएबल का वैल्यू जांच सकते हैं। और, अंतर्निहित फ़ंक्शंस जिनमें रिटर्न प्रकार है, आप रिटर्न प्रकार देख सकते हैं क्योंकि आप फ़ंक्शन नाम और/या पैरामीटर टाइप कर रहे हैं। – JimmyPena