मैंने सोचा कि यह आसान होगा, लेकिन यह काफी कठिन साबित हो रहा है। किसी भी सलाह या विचारों को अपमानित किया जाएगा।वीबीए एक फॉर्म बटन को दबाए जाने के लिए फ़ंक्शन को कैसे बल दें
मेरे पास एक्सेल में एक फॉर्म है कि यदि कोई निश्चित बटन दबाया जाता है तो मुझे उस बटन के कोड के कोड से पहले पासवर्ड दर्ज करने की आवश्यकता होती है।
मैं सिर्फ एक InputBox इस्तेमाल कर सकते हैं, लेकिन वह किसी और पासवर्ड को देखने के लिए जब यह में टाइप की अनुमति देगा। इसलिए मैं एक पाठ बॉक्स के साथ एक दूसरे फार्म का उपयोग करें और सेट इसे करने के लिए PasswordChar पैरामीटर है *
यहाँ करना चाहते हैं समस्या यह है। मैं इस
if checkPassword("Please enter your password") = False then exit sub
checkPassword
की तरह कोड का उपयोग करना चाहते एक समारोह है कि एक पैरामीटर के रूप में एक स्ट्रिंग लेता है। यह फ़ंक्शन एक फॉर्म खोलता है और संदेश को एक योग्य में डाल देता है। उपयोगकर्ता को पासवर्ड दर्ज करना चाहिए और ठीक क्लिक करना चाहिए।
उप btnOK_Click()
को जांचना चाहिए कि पासवर्ड सही है और फिर उस फ़ंक्शन को बल दें जो वापस लौटने के लिए फॉर्म खोला गया है यदि पासवर्ड ठीक था या गलत पासवर्ड गलत था।
मैं काम नहीं कर सकता कि फ़ंक्शन को वापस लौटने के लिए कैसे मजबूर किया जाए। जब मैं उपयोगकर्ता ठीक क्लिक करता हूं और फिर फॉर्म को उतारना चाहता हूं तो मैंने एक वैश्विक चर को सही या गलत पर सेट करने का प्रयास किया है। यह फ़ंक्शन वापसी करता है, लेकिन यह फ़ॉर्म द्वारा निर्धारित सभी वैश्विक चर को भी रीसेट करता है।
यहाँ मेरी समारोह है कि प्रपत्र
Function checkPassword(message As String) As Boolean
frmPassword.Show
frmPassword.passwordMsg.Caption = message
'passwordStatus is a global variable
If passwordStatus = True Then checkPassword = True Else checkPassword = False
End Function
कॉल यहां उप रूपों ठीक बटन से जुड़ा हुआ है:
Private Sub passwordok_Click()
If Me.passwordtext.Text = "password" Then
passwordStatus = True
Else
passwordStatus = False
End If
Unload Me
End Sub
हाय एलेक्स, इस समाधान के लिए धन्यवाद। मैंने सिद्धार्थ से समाधान की कोशिश की और यह ठीक काम किया (सिद्धार्थ को फिर से धन्यवाद), लेकिन आपका समाधान जो मैं मूल रूप से करना चाहता था उसके करीब है। मैंने कोशिश की है और यह बहुत अच्छा काम करता है, बहुत आसान और छोटे लोड करता है। धन्यवाद – PrestonDocks
मैंने इसका इस्तेमाल किया, यह बेहद काम करता है, सिवाय इसके कि मुझे 'userStatus = Me.passwordtext.Text =" password "'को' अनलोड करें 'के बाद रखना होगा क्योंकि अनलोड लोड वैरिएबल रीसेट करता है, क्या इससे समस्याएं पैदा हो सकती हैं? – user1759942