What is Variable and Data Types in Excel VBA in Hindi | Excel VBA Lesson-6 introduction to variable
What is Variable and Data Types in Excel VBA in Hindi | Excel VBA Lesson-6 introduction to variable
Variable in Excel VBA
इस chapter मे हम coding
की बात न करके सिर्फ variable को समझेगे
What is Vairable?
Variable क्या
होता है?
Variable किसी भी data का नाम होता है जिसमे डाटा को स्टोर किया जाता है।
मान लीजिये आप जब भी BVA मे
कोई प्रोग्राम लिखते है तो उसमे आप काफी सारी चिजे इस्तेमाल करते हैं। जैसे charts का उज करते हैं या pivot
table का उज करते हैं,
worksheet उज करते हैं ओर workbook उज
करते हैं इस तरह जब हम प्रोग्राम बनाते हैं तो काफी सारी चीजें यूज करते हैं उनको
स्टोर करने के लिए स्पेस की जरूरत पड़ती है ताकि जब भी हम vba को
run करें तो vba
को ये पता होना चाहिए की user क्या चीज़ उज करना चाहता है ओर जब वो स्टोर होगी तो तभी तो हम
उसे यूज कर पाएंगे।
For Example हमको 10 ओर 20 का जोड़ करना है ओर इसके लिए जब हम VBA मे
प्रोग्राम बनाएँगे तो इसके लिए एक variable
declare करेंगे यानि की हम अपनी तरफ से
कुछ नाम चुज करेंगे जैसे a, b, c,...x, y, z
कुछ भी मान लो हमने नाम चुना A ओर
B तो पहला variable
बराबर होगा 10 के ओर दूसरा बराबर
होगा 20 के तो इससे ये होगा की जब ये प्रोग्राम run होगा तो vba उसको
स्टोर कर लेगा। उसको पता होगा की यूजर ये दो variable यूज कर
रहा है जीमे एक की वैल्यू 10 है ओर दूसरे की 20 ओर जब भी आप उसको calculate करना चाहेंगे तो वो
उसको calculate कर देगा।
Data टाइप – जब भी हम कोई variable create करते हैं तो सबसे पहले compiler को ये बताते है की ये किस प्रकार का data है। जिसको हम उस variable
मे स्टोर करेंगे। तो इससे क्या
होता है की compiler उतने ही memory
साइज़ से variable को computer
की memory मे allow कर देता है। जिससे की हमारा जो काम का स्पेस है वो
कम होता है ओर computer की Ram
पर भी कम असर पड़ता है।
इस lesson मे हम पढ़ेंगे की किस किस प्रकार के data टाइप होते हैं जिनका उज हम वीबीए मे कर सकते हैं।
सबसे पहले हम ये जान ले की
डाटा टाइप कैसा होता है या हम कह सकते, कैसा दिखता है।
यहाँ पर देखिये मैंने एक module insert किया है ओर इसमे कोड़े लिखे हैं। यहाँ पर आप सबसे उपर देख सकते
हैं जहां पर लिखा है Dim a, b, c
As Integer” यहाँ Dim का
मतलब है Dimension ओर “a, b, c” ये हैं हमारे variable ओर जो
आखिर मे “As” लिखा है ये है data type यानि
यहाँ मैंने जो “a, b, c
” हैं उनको define किया है वो integer
data टाइप है उसके बाद मैंने a ओर
b की वैल्यू ली हैं ओर c
मे मैंने इनका प्लस कर दिया है
फिर “Range(“a1”)।value=c”
का मतलब है जो c की
वैल्यू है वो a1 मे आ जाए।
इसी प्रकार दूसरे कोड़े मे
मैंने “d” वैल्यू ली है ओर इसका data type दिया है string
इसका मतलब है की ये केवल text के साथ काम करेगा जिसका मैंने एक massage टाइप किया है यानि जो भी D
की वैल्यू होगी वो A2 मे
आ जाएगी। तो इस प्रकार हम अपने date
टाइप को define करते हैं। ओर इसी प्रकार किस किस प्रकार के देता टाइप होते है
वो मैं आपको बताता हूँ
यहाँ पर देखिये ये एक data type की लिस्ट है इसको आप नेट से डौन्लोड कर सकते हैं ये आपको नेट पर
मिल जाएगी या फिर नीचे दिये लिंक पर क्लिक करके भी आप इसको डौन्लोड कर सकते हैं।
Download Data Type List – Click here
मैं आपको एक उधारण के साथ
समझता हूँ, Suppose आपने गाड़ियों की parking देखि
होगी वहाँ पर bike scooter के लिए जो पार्किंग होती है उसके लिए कम space होता है ओर कार के लिए ज्यादा ओर बड़ी गाड़ियों के लिए ओर ज्यादा
फिर उनके पार्किंग चार्ज भी अलग अलग होते हैं जैसे bike के 10/- रु कर के 20/- रु
ओर 50/- रु अब मान लीजिये आपके पास bike
है तो जाहीर है आप कार पार्किंग
मे नहीं जाएंगे क्योंकि वहाँ फालतू मे extra
पैसा देना पड़ेगा यानि आप अपनी जरूरत के हिशाब से जगह
लेते हैं इसी प्रकार variable मे data
टाइप का अलग अलग महत्व है।
1. सबसे पहले type
होता है Byte, इसकी स्टोरेज सिर्फ 1 byte
की होती है ये सबसे छोटी यूनिट
होती है इसकी वैल्यू की range सिर्फ 0 से 255 तक होती है
2. उसके बाद आता है integer जिसकी
स्टोरेज होती है 2 bytes ये byte
से उपर की यूनिट है ओर इसका range of value size होता है -32,768
से 32,767 तक रहता है।
3. Integer: 2 Byte: Integer from -32 768 to 32
767.
3) Long: 4 Byte: Integer
from -2 147 483 648 to 2 147 483 647
4) Double: 8 Byte:
Numeric data type with float precision with double precision in calculations
5) Decimal: 14 Byte:
Numeric data type with fixed precision and scale (accuracy up to 28).
6) String: Text strings.
Flexible length or 64 kilobytes
7) Boolean: 2 Byte:
Logical value (true or false) 8) Date:
8 Byte: The date in the
range from 1.1.100 to 31.12.9999
9) Object: 4 Byte:
Reference to an object.
10) Variable: 16 Byte:
Basic type. May contain special value Null, numeric value, text, reference to
object or variable array.
तो आपको ये तो
समझ मे आ गया की Purpose ऑफ Variable
क्या है यानि information स्टोर करनी हैं ओर
वो byte मे भी हो सकती हैं integer मे
भी हो सकती है ओर long या single ,double मे भी हो सकती है
How तो Declare
variable – सबसे पहले byte को लेते हैं
Example:-
सबसे
पहले VBA का नाम टाइप करेंगे जैसे:
Sub declare_byte()
अब
मैं 2 variable लेता हूँ:
Dim
A,B As Byte
Dim B As Byte
(जिस प्रकार “Sub” VBA का reserve
word होता
है उसी प्रकार “Dim” (Dimension) भी VBA का reserve word होता है।)
यहाँ
पर जो range हमने calculate करनी है वो “=” equal से
पहले आएगी इसलिए हम लिख सकते हैं:
A=range(“A2”).value
B=range(“A2”).value
एक
variable एक byte space लेता है तो अगर 20 Bytes हैं
तो आपकी memory डिवाइस मे
20
Bytes space लेंगे।
यहाँ
पर जो range हमने calculate करनी है वो “=” equal से
पहले आएगी इसलिए हम लिख सकते हैं:
मेरे पहले सेल “A1” मे 10 लिखा है ओर “A2” मे
20 तो ये इसको रन कर रहा है अब 0-255 का मतलब है यदि हम सेल डेल वैल्यू 255 से
ज्यादा कर दे यानि 256 भी कर दे तो ये “over flow” की error दिखाएगा क्योंकि इसका मतलब यही है की जो Data-Type आपने उसे दिया है उसमे आप Range of value 255 से ज्यादा data स्टोर
नहीं कर सकते। एक ओर example देख
लेते हैं।
Example:
हम पहले वाला code उठाते हैं:
Sub
Add()
Dim a, b,
c As Byte
a = 10
b = 20
c = a + b
Range("a1").Value = c
End Sub
ये सही काम करता है अब
यदि हम इसकी वैल्यू change कर दे जिससे इनका जोड़
255 से ज्यादा हो जाए।
Sub
Add()
Dim a, b,
c As Byte
a = 100
b = 200
c = a + b
Range("a1").Value = c
End Sub
तो अब ये over flow की error शो
करेगा क्योकि ये इसकी storage क्षमता
के बाहर है। इसलिए byte का यूज बहुत कम किया
जाता है।
अब byte से उपर वाले पर जाते हैं ओर byte से उपर आता है Integer जिसकी
range of value होती
है -32,768
से 32,767
Sub Add()
Dim a, b,
c As Integer
a = 100
b = 200
c = a + b
Range("a1").Value = c
End Sub
तो अब over flow की error नहीं
आएगी क्योंकि इनका जोड़ 300 आया है जोकि Integer की range मे आता है।
Post a Comment