![कैलेंडर पेज](/f/cd02488552f71339c1172f8a56b9d6a7.jpg)
वीबीए 30 दिसंबर, 1899 से दिनों की संख्या के रूप में एक तारीख को स्टोर करता है।
छवि क्रेडिट: सर्गेई ग्नतियुक / आईस्टॉक / गेट्टी छवियां
अनुप्रयोगों के लिए Microsoft Visual Basic में तिथियों की तुलना करना किसी अन्य डेटा प्रकार की तुलना करने से अलग नहीं है। आपके द्वारा तुलना किए जाने वाले मान "दिनांक" प्रकार के होने चाहिए। आप मानक तुलना ऑपरेटरों का उपयोग कर सकते हैं: "" "से अधिक" के लिए; ">=" के लिए "से बड़ा या बराबर"; "=" के लिए "बराबर"; और "<>" के लिए "बराबर नहीं।" आप दो तुलना ऑपरेटरों, "Is" और "IsNot" का भी उपयोग कर सकते हैं।
वीबीए दिनांक प्रकार
जब आप तिथियों की तुलना करते हैं तो यह याद रखना उपयोगी होता है कि वीबीए स्मृति में दिनांक मानों को कैसे संग्रहीत करता है। दिनांक को डबल-सटीक फ़्लोटिंग पॉइंट नंबर, या डबल के रूप में संग्रहीत किया जाता है। लंबा पूर्णांक भाग 30 दिसंबर, 1899 से दिनों की संख्या है, धनात्मक या ऋणात्मक। दशमलव भाग वह समय है जो आधी रात के बाद बीत चुका है। बिना समय वाली तारीख का दशमलव भाग शून्य पर सेट होता है। उदाहरण के लिए, 1 मई, 1967 को 24593.0 के रूप में संग्रहीत किया जाता है। इसका मतलब यह है कि जब वीबीए दो तिथियों की तुलना करता है, तो यह वास्तव में दो संख्याओं की तुलना करता है जो दिनों का प्रतिनिधित्व करते हैं।
दिन का वीडियो
चरित्र स्ट्रिंग बनाम। दिनांक
जब आप वीबीए में तिथियों की तुलना करते हैं, तो आपको यह सुनिश्चित करना होगा कि आपके द्वारा तुलना किए जाने वाले मूल्यों में "दिनांक" प्रकार है और वर्ण स्ट्रिंग नहीं हैं। उदाहरण के लिए, वर्ण स्ट्रिंग "05/01/1999" वर्ण स्ट्रिंग "12/31/1900" से कम है क्योंकि "05" "12." से पहले आता है "CDate" फ़ंक्शन का उपयोग करके किसी वर्ण स्ट्रिंग को दिनांक प्रकार में बदलें, उदाहरण के लिए, "CDate (पाठ बॉक्स। मूल्य)"।
सहायक कार्य
सीडीएटी () के अतिरिक्त, अन्य उपयोगी कार्य हैं जिनका उपयोग आप तिथियों की तुलना करते समय कर सकते हैं। "दिनांक ()" फ़ंक्शन आज की तारीख को दिनांक मान के रूप में प्रदान करता है। "अब ()" फ़ंक्शन आज की तारीख और समय को दिनांक मान के रूप में प्रदान करता है। क्योंकि दिनांक डेटा प्रकार में एक समय घटक भी शामिल होता है, आप किसी चर का केवल दिनांक भाग निकाल सकते हैं "डेटवैल्यू ()" फ़ंक्शन का उपयोग करके तिथियों की तुलना करते समय, उदाहरण के लिए, "यदि सबमिशन> डेटवैल्यू (समय सीमा) तब ..."
तिथि अंकगणित
क्योंकि दिनांक 30 दिसंबर, 1899 से दिनों की संख्या के रूप में संग्रहीत है, आप VBA में तिथियों की तुलना करते समय दिनांक अंकगणित को शामिल कर सकते हैं। उदाहरण के लिए, यदि कोई टिकट खरीदे जाने के तीन दिन बाद समाप्त हो जाता है, तो आप निम्न के समान VBA कोड के साथ समाप्त टिकट की जांच कर सकते हैं:
सार्वजनिक समारोह समाप्त हो गया (दिनांक के रूप में खरीद) बूलियन समाप्त होने के रूप में = गलत अगर खरीद + 3> तिथि () फिर समाप्त हो गया = सही अंत अगर अंत समारोह