VBA
वेरिएबल एंड डाटा टाइप
वेरिएबल को कैसे डिक्लेअर करते हैं।
किसी भी वेरिएबल को डिक्लेअर करने के लिए हम डिम या डायमेंशन स्टेटमेंट का उपयोग करते हैं।
वरियलबे नाम मतलब जो हम एक्सेल को बताना चाहते हैं। वेरिएबल को समझने से पहले हमें उसके कुछ रूल्स को समझना होगा। निचे देखे।
१) कम से कम २५५ करैक्टर का होना चाहिए।
२) ब्लेंक स्पेस और स्पेशल कैरेक्टर्स नहीं होने चाहिए।
३) इसकी शुरुआत किसी भी नंबर से नहीं होनी चाहिए।
DATA TYPE
डाटा टाइप २ प्रकार के होते हैं।
१) NUMERIC OR 2) NON-NUMERIC TYPE
VBA की परिभाष VISUAL BASIC APPLICATION ये एक प्रोग्रामिंग एप्लीकेशन हैं जो की एक्सेल मैं बहुत ही उपयोगी हैं। ये किसी भी टास्क को आसानी से कर सकता है खासकर जो हम एक्सेल मैं हर रोज़ करते हैं। पिछेल ब्लॉग मैं हमने एक्सेल मैं डेवलपर टूल का इस्तेमाल करते हुए मैक्रो को जाना। अब इसे तोडा और गहराई से समजेंगे।
एक्सेल VBA को समझने के लिए हमें सब से पहले उसके वेरिएबल को जानना होगा।
वेरिएबल एंड डाटा टाइप
हमे प्रोग्रामिंग करने के लिए जो इनफार्मेशन चाहिए होती हैं वरियलबे उसे स्टोर करता हैं। जब हम अलग -अगल डाटा पर काम करते हैं तब हम अलग -अलग वेरिएबल को भी चुनते हैं। इसे ब्लॉग मैं हम जानेगे वेरिएबल और टाइप और वेरिएबल को। Variable एक स्टोरेज एरिया है, जिसका यूज यूजर data या value को स्टोर करने के लिए करता है ! वेरिएबल में डाटा स्टोर रहता है और प्रोग्राम एग्जीक्यूशन के समय यूजर कभी भी इसे बदल सकता है !
जब भी हम कोई प्रोग्राम बनाते हैं तो हमें सबसे पहले वेरिएबल को declare करना होता है ! वेरिएबल declare करने के बाद इसे बराबर के चिन्ह (=) के साथ एक वैल्यू दे दी जाती है, जैसे- a=4; या x=10; आदि !
उदाहरण के तौर पर मैं आपको बता दूं जैसे हम किसी व्यक्ति का name और age वेरिएबल में स्टोर करना चाहते हैं, तो इसके लिए हमें दो वेरिएबल लेनी पड़ेगी ! एक वेरिएबल में हम व्यक्ति का name और दूसरे वेरिएबल में age स्टोर करेंगे !
वेरिएबल को कैसे डिक्लेअर करते हैं।
किसी भी वेरिएबल को डिक्लेअर करने के लिए हम डिम या डायमेंशन स्टेटमेंट का उपयोग करते हैं।
वरियलबे नाम मतलब जो हम एक्सेल को बताना चाहते हैं। वेरिएबल को समझने से पहले हमें उसके कुछ रूल्स को समझना होगा। निचे देखे।
१) कम से कम २५५ करैक्टर का होना चाहिए।
२) ब्लेंक स्पेस और स्पेशल कैरेक्टर्स नहीं होने चाहिए।
३) इसकी शुरुआत किसी भी नंबर से नहीं होनी चाहिए।
डाटा टाइप २ प्रकार के होते हैं।
१) NUMERIC OR 2) NON-NUMERIC TYPE
- NUMERIC TYPE
- NON-NUMERIC TYPE
- OPERATORS AND OPERANDS
किसी भी प्रोग्रामिंग भाषा में प्रयोग किये जाने वाले operators वे संकेत होते हैं जो कि कंप्यूटर कम्पाइलर को गणितीय या लॉजिकल संगणनाएं करने के लिए निर्देश देते है.और
जिस मात्रा वैल्यू पर एक गणितीय ऑपरेशन किया जाता है। उसे ओपेरंडस कहते हैं।
अगर न्यूमेरिक वैल्यू हैं तो कंप्यूटर उसे ० वैल्यू से डिफाइन करता हैं। अगर ब्लेंक स्पेस से शुरू हो तो उसे स्ट्रिंग और अगर आप अपना कोई वेरिएबल लगना चाहो तो = से स्टार्ट कर सकते हो।
_लाइन कॉन्टीनुअशन ऑपरेटर
You can use space + underscore to split a single statement into more than one line
“” डबल कोट्स
You can use “” to delimit a group of characters and symbols.
: कोलन ऑपरेटर
You can use : to put the two statements in a sing line.
& स्ट्रिंग कॉन्कटेनशन
It is used to concatenate tow strings.
-
Arithmetic Operators
Arithmetic Operators
arithmetic ऑपरेटर्स का प्रयोग आंकिक गणनाओं के लिए किया जाता है. VBArithmetic ऑपरेटर + का प्रयोग जोड़ (addition) के लिए, – का प्रयोग घटाने (substraction) के लिए, * का प्रयोग गुणा (multiply) के लिए, / का प्रयोग भाग (dividation) तथा % का प्रयोग भाग-अवशेष (modulo division) के लिए किया जाता है.
- Logical Operators
लॉजिकल ऑपरेटर का प्रयोग variables में लॉजिकल ऑपरेशन करने के लिए किया जाता है.
Conditional Statements in Excel VBA – If Else, Case, For, Do While, Do Until, Nested Ifs.
यहाँ पर हम इफ इस्टेट्मेंट का एक उदाहरण देखंगे।
if statement सही होगा then तब क्या होगा।
Program1
Dim Score as Interger, result as String
Score=Range("B5").value
if Score >= 91% Then Result = "Excellent"
Range("C5").value=Result
इस प्रोग्राम से ये पता चलेगा B5 मैं जो वैल्यू हैं अगर वो ९१ % से ज्यादा या उसके बराबर हैं तो
C5 मैं उसका रिजल्ट एक्सीलेंट लिखा हुआ आना चाहिए।
सोलूशन्स
१)शीट १ मैं डेवलपर मेनु पर क्लिक, करे। इन्सर्ट पर क्लिक करके एक्टिव x कण्ट्रोल कमांड बटन को सेलेक्ट करे।
End if
रन बटन पर क्लिक करे और कुछ और वैल्यू टाइप करे b ५ मैं आपको कुछ ऐसा दिखाई देगा
Program1
Dim Score as Interger, result as String
Score=Range("B5").value
if Score >= 91% Then Result = "Excellent"
Range("C5").value=Result
इस प्रोग्राम से ये पता चलेगा B5 मैं जो वैल्यू हैं अगर वो ९१ % से ज्यादा या उसके बराबर हैं तो
C5 मैं उसका रिजल्ट एक्सीलेंट लिखा हुआ आना चाहिए।
सोलूशन्स
१)शीट १ मैं डेवलपर मेनु पर क्लिक, करे। इन्सर्ट पर क्लिक करके एक्टिव x कण्ट्रोल कमांड बटन को सेलेक्ट करे।
२) शीट १ पर बटन को ड्रैग करे। या बनाये।
३)बटन पर डबल क्लिक करे या राइट क्लिक करके व्यू कोड सेलेक्ट करे।
४)अब व्यू कोड के अंदर प्रोग्राम को कॉपी करके पेस्ट करे। प्राइवेट सब कमांड बटन और एन्ड सब के बीच पेस्ट करे।
५)उसके बाद रन बटन पर क्लिक करे।
६) अब B5 मैं ९१ टाइप करे या कोई और वैल्यू।
७) बटन पर क्लिक करे
आपको रिजल्ट मैं एक्सीलेंट लिखा हुआ दिखाई देगा।
if else Program
अगर आप चाहते हो की ९१ के निचे वाले वैल्यू पर कुछ और इनपुट मैसेज आये तो आप यह प्रोग्राम लिखे.
Else
Result= "Please insert correct Value."
End if
पहले के प्रोग्राम मैं हम इस प्रोग्राम को भी ऐड कर देंगे। आपको प्रोग्राम कुछ इस तरह दिखाई देगा।
पहले के प्रोग्राम मैं हमने देखा की b5 मैं जो वैल्यू हैं अगर वो ९१ से ज्यादा या उसके बराबर हो तो हमें C5 मैं रिजल्ट एक्सीलेंट दिखाई देना चाहिए ,
और जब हम इस प्रोग्राम को ऐड करेंगे तो वैल्यू ९१ के निचे हो तो इनपुट मैसेज मैं "प्लीज इनपुट करेक्ट वैल्यू" दिखाई देना चाहिए।
रन बटन पर क्लिक करे और कुछ और वैल्यू टाइप करे b ५ मैं आपको कुछ ऐसा दिखाई देगा
प्रोग्राम २ VBA मैं लॉजिकल ऑपरेटर्स का सबसे ज्यादा इस्तेमाल AND, OR, NOT फंक्शन मैं होता हैं।
Dim Rahul As Integer, Raj As Integer, Result As Sting
Rahul= Range("B2 ").Value
Raj=Range("C2 ").Value
If Rahul >=91 And Raj>50 Then Result ="Great"
Else
Result="Not Good"
End If
Range("D2 ").Value=Result
२)वर्कशीट पर बटन को ड्रैग करे।
३)बटन पर डबल क्लिक करे।
४)अब व्यू कोड के अंदर प्रोग्राम को कॉपी करके पेस्ट करे। प्राइवेट सब कमांड बटन और एन्ड सब के बीच पेस्ट करे।
Dim Rahul As Integer, Raj As Integer, Result As Sting
Rahul= Range("B2 ").Value
Raj=Range("C2 ").Value
If Rahul >=91 And Raj>50 Then Result ="Great"
Else
Result="Not Good"
End If
Range("D2 ").Value=Result
इस प्रोग्राम के माध्यम से हम ये समझना चाहते हैं की राहुल के मार्क्स >= ९१ हैं और राज के मार्क्स > ५० हैं तो रिजल्ट d2 मैं "ग्रेट" लिखा हुआ होना चाहिए। अन्यथा "नॉट गुड " इस प्रोग्राम मैं हम एंड फंक्शन का इस्तेमाल करेंगे।
सब से पहले आप इसतरहा का टेबल बना लीजिये समझने के लिए।
१)डेवेलपर टूल पर क्लिक करे इन्सर्ट पर क्लिक करे एक्टिव x से कमांड बटन सेलेक्ट करे।२)वर्कशीट पर बटन को ड्रैग करे।
३)बटन पर डबल क्लिक करे।
४)अब व्यू कोड के अंदर प्रोग्राम को कॉपी करके पेस्ट करे। प्राइवेट सब कमांड बटन और एन्ड सब के बीच पेस्ट करे।
५)उसके बाद रन बटन पर क्लिक करे। अगर जवाब सही होगा तो आपको रिजल्ट ऐसा दिखाई देगा।
अगर जवाब गलत होगा तो रिजल्ट ऐसा दिखाई देगा।
OR फंक्शन भी ऐसे ही काम करेगा। बस आपको ऊपर के प्रोग्राम मैं एंड की जगह पर और लगाना हैं।
वैसे ही एंड एंड आगे अगर आप नॉट को जोड़ दो तो नॉट फंक्शन भी ऐसे ही काम करेगा
- Case Function in VBA
अगर आप एक से ज्यादा कंडीशन का इस्तेमाल कर रहें हो तो आप Case फंक्शन का इस्तेमाल कर सकते हो।
मान लीजिये अगर राहुल को एग्जाम मैं >=४५ PASS , >=55 THIRD CLASS >=65 SECOND CLASS, >=75 FIRST CLASS, >=100 DISTINCTION इस का प्रोग्राम कुछ इस तरह होगा।
Dim Rahul As Integer, Result As String
Rahul= Range("A2").Value
Select Case Rahul
Case Is >=45
Result="Pass"
Case Is >=55
Result="Third Class"
Case Is >=65
Result="Second Class"
Case Is >=75
Result="First Class"
Case Is >=100
Result="Distinction
Case Else
Result="Fail"
End Select
Range("B2").Value=Result
इस प्रोग्राम मैं हम समझेंग सेलेक्ट केस से यहाँ पर हमने ६ कंडीशन लगाई हुई हैं। जिसके लिए हमने सेलेक्ट केस फंक्शन का इस्तेमाल किया हैं। केस राहुल को करके उसके मार्क्स को बताया हैं। और उस का रिजल्ट B2 मैं दिखना चाहिए।
सबसे पहले हम एक टेबल बना लेते हैं
१)वर्कशीट मैं कमांड बटन ड्रैग करेंगे
२) बटन पर डबल क्लिक करेंगे।
३)सेलेक्ट केस प्रोग्राम को कॉपी करके। प्राइवेट सब और एन्ड के बीच पेस्ट करेंगे।
४) रन बटन पर क्लिक करेंगे।
५)अब वर्कशीट पर राहुल B2 मैं मार्क्स लिखंगे और
६) कमांड बटन प्रेस करेंगे।
ऐसे ही आप अलग-अलग नंबर लिखा कर रिजल्ट देखते जाइये।
- Nested Ifs
यहाँ पर हम समझेंगे नेस्टेड इफ फंक्शन को ये मैक्रो मैं कैसे काम करता हैं। इस प्रोग्राम मैं हम मैसेज बॉक्स बनाएंगे। जो हमे मार्क्स इन्सर्ट करने पर उसका रिजल्ट बताएगा।
Mrks=InputBox("Insert Numbers", "Marks")
IfMrks<=100 andMrks>=90 Then
MsgBox"Result:Excellent"
ElseIf Mrks <90 And Mrks>=75 Then
MsgBox"Result:Distinction"
ElseIf Mrks <74 And Mrks>=65 Then
MsgBox"Result:First Class"
ElseIf Mrks <64 And Mrks>=55 Then
MsgBox"Result:Second Class"
ElseIf Mrks<54 And Mrks>=45 Then
MsgBox"Result:Third Class"
ElseIf Mrks<44 And Mrks>=35 Then
MsgBox"Result: Pass Class"
Else
MsgBox"Result:Fail"
End IF
1) डेवलपर मेनू पर क्लिक करे , इन्सर्ट पर क्लिक करके बटन ड्रैग करे।
२) बटन पर डबल क्लिक करे
३) प्राइवेट सब मैं प्रोग्राम टाइप करे या कॉपी पेस्ट करे।
४) रन बटन पर क्लिक करे।
५) अब नंबर इन्सर्ट करे। जो नंबर चाहो।
६) ऑक बटन पर क्लिक करे।
यहाँ पर आपको रिजल्ट कुछ इसतरहा दिखाई देगा। आप इस फाइल को सेव करे एक्सेल मैक्रो इनेबल वर्कबुक एक्सटेंशन के साथ।
- प्रोपेरिट्स
यहाँ पर अगर आप बटन का कलर चेंज करना चाहते हो तो वो भी कर सकते हो या बटन पर कमांड बटन जगह कुछ और लिखना चाहते हो वो भी कर सकते हैं आइये।
१) डेवलपर मेनू पर क्लिक करे इन्सर्ट बटन पर क्लिक करके बटन ड्रैग करे।
२) बटन पर डबल क्लिक करे।
३) प्रॉपर्टीज पर क्लिक करे या व्यू पर क्लिक करे और प्रॉपर्टीज विडोस पर क्लिक करे या F4 क्लिक करे।
४) अगर आप नाम चेंज करना चाहते हो तो प्रॉपर्टीज मैं कैप्शन पर क्लिक करे और नाम चेंज करे। (Button)
5) अगर आप बटन का कलर चेंज करना चाहते हो तो , बैककलोर पर क्लिक करे।
६) टेक्स्ट का कलर चेंज करना चाहते हो तो , फोरे कलर पर क्लिक करे। इसी तरह से आप अलिगनेमण्ट चेंज
दोस्तों यहाँ पर हमने सीखा की बटन को किस तरह से कोडिंग करते हैं कल फिर मिलेंगे किसी नए टॉपिक के साथ तब तक के अपना ख्याल रखे। धन्यवाद।
Comments
Post a Comment