मैं एक्सेल-वीबीए में Please Wait
संदेश बनाने की कोशिश कर रहा हूं। यह उपयोगकर्ता को एसक्यूएल क्वेरी को संसाधित करने की याद दिलाता है कि प्रक्रिया अभी भी चल रही है।एक्सेल वीबीए "कृपया प्रतीक्षा करें" पॉप-अप संदेश
मैं यह संदेश उपयोगकर्ताform में प्रदर्शित करना चाहता हूं।
वर्तमान में, उपयोगकर्ता एसक्यूएल डीबी से कनेक्ट होता है, डीबी और कुछ अन्य विकल्प चुनता है, प्रेस दबाता है ... और फॉर्म अनलोड नहीं होता है। गो पॉइंट पर मेरे पास एक और फॉर्म है जो संदेश Please Wait
के साथ पॉप अप करता है, लेकिन यह फॉर्म अनलोड नहीं होता है, यानी sql execute कमांड नहीं चलाता है।
Please Wait
userform बुला, एक लेबल सहित के लिए मेरे कोड: एक और कोड मॉड्यूल में
Call WaitShowSQl.ExecuteCall KillWaitCall WaitShow
SQl.Execute
Call KillWait
मेरे पास है:
Private Sub UserForm_Activate()
Call PleaseWait
End Sub
Sub PleaseWait()
Wait.Label1.Caption = "Calculating...Please Wait!"
End Sub
:
Sub WaitShow()
Wait.Show
End Sub
Sub KillWait()
Unload Wait
End Sub
मैं userform निम्न कोड के साथ wait
कहा जाता है
अब कोड निष्पादित करते समय, रन-टाइम करें तों निम्नलिखित को निष्पादित करने के लिए मॉड्यूल के माध्यम से वापस ले जाने के लिए नहीं:
SQl.ExecuteSQl.Execute
मैं स्थिति बार के साथ कार्यक्रम की प्रगति दिखा सकते हैं, लेकिन एक userform संदेश पॉप अप इस कार्यक्रम के लिए बहुत उपयोगी होगा।
उत्तर जीटीजी के लिए धन्यवाद। मैंने पहले से ही कोशिश की है और इसे प्राप्त करें: मोडल फॉर्म प्रदर्शित होने पर गैर-मोडल फॉर्म नहीं दिखाया जा सकता है। – Fwafa
इसके अलावा, मैं यह उल्लेख करना भूल गया कि उपयोगकर्ता पहला विकल्प चुनता है जहां उपयोगकर्ता विकल्प चुनते हैं। – Fwafa
अपना पहला फॉर्म मानने के लिए मोडल होना आवश्यक है, तो आप या तो "प्रतीक्षा" उपयोगकर्ताफॉर्म के अंदर अपना SQL निष्पादन कोड डाल सकते हैं या "प्रतीक्षा" उपयोगकर्ता प्रारूप से मूल रूप में फ़ंक्शन को कॉल कर सकते हैं। इस तरह आपको किसी भी अतिरिक्त मॉड्यूल की आवश्यकता नहीं है। एक तीसरा विकल्प "प्रतीक्षा" फ़ॉर्म के लिए ActiveX .exe बनाना होगा और उस प्रक्रिया को मॉडलिंग "प्रतीक्षा" फ़ॉर्म दिखाएगा। हालांकि, आपको इसकी एक्सेल शीट के साथ उस .exe को तैनात करने की आवश्यकता होगी। – GTG