इस ट्यूटोरियल में, हम सीखेंगे कि कैसे एक रिकॉर्डसेट खोलें, रिकॉर्डसेट में रिकॉर्ड्स की संख्या की गणना करें, रिकॉर्डसेट के माध्यम से लूप करें, एक रिकॉर्ड जोड़ें, एक रिकॉर्ड अपडेट करें, एक रिकॉर्ड से एक मान पढ़ें, और एक रिकॉर्ड हटाएं।
हमारे पास एक एक्सेस टेबल है, जिसे नीचे दिखाया गया ProductT कहा जाता है:
एक रिकॉर्डसेट खोलना
हमें पहले उस डेटाबेस को स्थापित करने की आवश्यकता है जिसका हम उपयोग करना चाहते हैं, इस मामले में यह वर्तमान में खोला गया डेटाबेस है। फिर हम अपना रिकॉर्डसेट खोलने/बनाने के लिए CurrentDB.OpenRecordSet विधि का उपयोग कर सकते हैं।
एक रिकॉर्डसेट बनाने के लिए जो हमें उत्पाद टी नामक तालिका में डेटा में हेरफेर करने की अनुमति देगा, हम निम्नलिखित कोड का उपयोग करेंगे:
1 | CurrentDb.OpenRecordset ("उत्पाद टी") |
VBA का उपयोग करके रिकॉर्ड्स की संख्या की गणना करना
एक बार जब आप एक रिकॉर्डसेट बना लेते हैं, तो आप इसके साथ कुछ उपयोगी करना चाहते हैं या किसी तरह से डेटा में हेरफेर करना चाहते हैं। आप निम्न कोड का उपयोग करके अपने डेटासेट (इस मामले में उत्पाद टी नामक तालिका) में रिकॉर्ड की संख्या की गणना कर सकते हैं:
1 | MsgBox CurrentDb.OpenRecordset("ProductsT")।RecordCount |
वीबीए का उपयोग कर रिकॉर्डसेट के माध्यम से लूपिंग
निम्नलिखित कोड हमारे रिकॉर्डसेट के माध्यम से लूप करता है:
1234567891011121314 | उप रिकॉर्डसेट_लूप ()डेटाबेस के रूप में हमारे डेटाबेस को मंद करेंरिकॉर्डसेट के रूप में हमारे रिकॉर्डसेट को मंद करेंहमारा डेटाबेस सेट करें = CurrentDbOurRecordset = ourDatabase.OpenRecordset("ProductsT") सेट करेंहमारेRecordset.EOF . तक करेंMsgBox OurRecordset!ProductIDहमारा रिकॉर्डसेट.मूवअगलाकुंडलीअंत उप |
वीबीए प्रोग्रामिंग | कोड जेनरेटर आपके लिए काम करता है!
रिकॉर्डसेट में रिकॉर्ड जोड़ना
रिकॉर्डसेट में नया रिकॉर्ड जोड़ने के लिए Recordset.AddNew पद्धति का उपयोग करें:
1234567891011121314 | उप रिकॉर्डसेट_जोड़ें ()CurrentDb.OpenRecordset("ProductsT") के साथ।नया जोड़ो![उत्पाद आईडी] = 8![ProductName] = "उत्पाद HHH"![ProductPricePerUnit] = १०![ProductCategory] = "खिलौने"![UnitsInStock] = १५।अद्यतनके साथ समाप्त करनाअंत उप |
परिणाम है:
एक रिकॉर्डसेट अपडेट करना
आपको Recordset.AddNew या Recordset.Edit विधि का उपयोग करना होगा। इस कथन के बाद आपको परिवर्तनों को बनाए रखने के लिए Recordset.Update पद्धति का उपयोग करना चाहिए।
एक रिकॉर्ड से मूल्यों को पढ़ना
रिकॉर्ड, वर्तमान रिकॉर्ड बनाने के लिए आपको Recordset.FindFirst विधि का उपयोग करना होगा। फिर आपको किस क्षेत्र को देखना है, यह निर्दिष्ट करने के लिए आपको Recordset.Fields का उपयोग करना होगा।
12345678910111213141516 | उप RecordSet_ReadValue ()डेटाबेस के रूप में हमारे डेटाबेस को मंद करेंरिकॉर्डसेट के रूप में हमारे रिकॉर्डसेट को मंद करेंहमारा डेटाबेस सेट करें = CurrentDbहमारा रिकॉर्डसेट सेट करें = हमारा डेटाबेस।हमारे रिकॉर्डसेट के साथ.FindFirst "ProductName =" & "'Product CCC'"अगर .NoMatch तोMsgBox "कोई मिलान नहीं मिला"अन्यथाMsgBox OurRecordset.Fields("ProductCategory")अगर अंतके साथ समाप्त करनाअंत उप |
परिणाम है:
VBA कोड उदाहरण खोज कर थक गए हैं? ऑटोमैक्रो का प्रयास करें!
रिकॉर्डसेट से रिकॉर्ड हटाना
किसी रिकॉर्डसेट से किसी रिकॉर्ड को हटाने के लिए आपको पहले Recordset.FindFirst पद्धति का उपयोग करके इसे वर्तमान रिकॉर्ड बनाना होगा। फिर आप इसे Recordset.Delete विधि का उपयोग करके हटा सकते हैं। निम्न कोड दिखाता है कि डेटा सेट में रिकॉर्ड 2 को कैसे हटाया जाए:
1234567891011121314151617181920212223 | उप RecordSet_DeleteRecord ()डेटाबेस के रूप में हमारे डेटाबेस को मंद करेंरिकॉर्डसेट के रूप में हमारे रिकॉर्डसेट को मंद करेंहमारा डेटाबेस सेट करें = CurrentDbहमारा रिकॉर्डसेट सेट करें = हमारा डेटाबेस।हमारे रिकॉर्डसेट के साथ.FindFirst "ProductName =" & "'Product BBB'"अगर .NoMatch तोMsgBox "कोई मिलान नहीं मिला"अन्यथाहमारा रिकॉर्डसेट.हटाएंअगर अंतके साथ समाप्त करना'टेबल फिर से खोलें'DoCmd. Close acTable, "ProductsT"DoCmd.OpenTable "ProductsT"अंत उप |
परिणाम है: