VBA हटाएं पंक्तियाँ - VBA का उपयोग करके एक्सेल पंक्तियों को हटाने के उदाहरण

एक्सेल VBA डिलीट रो

आम तौर पर एक्सेल वर्कशीट में, हमारे पास कीबोर्ड शॉर्टकट होने वाली पंक्तियों को हटाने के लिए दो अलग-अलग तरीके होते हैं और दूसरा राइट-क्लिक और इंसर्ट विधि का उपयोग करके, लेकिन वीबीए में हमें किसी भी पंक्तियों को हटाने के लिए डिलीट कमांड और वर्कशीट स्टेटमेंट का उपयोग करना होता है। यह है कि यदि हमें एक पंक्ति को हटाने की आवश्यकता है तो हम एक पंक्ति संदर्भ देते हैं लेकिन कई स्तंभों के लिए हम कई पंक्ति संदर्भ देते हैं।

वीबीए डिलीट रो विधि का उपयोग करके, हम सभी रिक्त पंक्तियों को हटा सकते हैं, और हम सेल मान के आधार पर पंक्ति को हटा सकते हैं। यदि कोई कोठरी खाली है तो हम पूरी पंक्ति को हटा भी सकते हैं।

इस लेख में, हम "VBA Delete Row" विधि पर चर्चा करेंगे। कॉन्सेप्ट के बारे में जानने के लिए अगले 15 से 20 मिनट तक खुद पर कब्जा रखें।

कैसे हटाएं रो?

उदाहरण 1

VBA में, हमें उस पंक्ति का उल्लेख करना होगा जिसे हम हटा रहे हैं।

कोड:

सब DeleteRow_Example1 () सेल (1, 1) एंड सब

कक्ष (1, 1) का अर्थ है पहली पंक्ति वाला पहला स्तंभ यानी A1 सेल। फिर हम "डिलीट" विधि का उपयोग करते हैं।

कोड:

उप DeleteRow_Example1 () कक्ष (1, 1)

अब यह पहली सेल को हटा देगा। सभी राइट साइड वैल्यू एक सेल को लेफ्ट में शिफ्ट करेंगे।

उदाहरण # 2

यदि आप पूरी पंक्ति को हटाना चाहते हैं, तो हमें "EntireRow" संपत्ति का उपयोग करने की आवश्यकता है, फिर हमें हमारे द्वारा चुनी गई सेल की पूरी पंक्ति को हटाने के लिए "डिलीट" विधि का उपयोग करने की आवश्यकता है।

कोड:

उप DeleteRow_Example2 () कक्ष (1, 1) .EntireRow.Delete समाप्ति उप

उदाहरण के लिए, मैंने एक्सेल शीट में कुछ अक्षर इस प्रकार दर्ज किए हैं।

अब, यदि मैं इस कोड को चलाता हूं, तो यह एक सेल नहीं, बल्कि पूरी पंक्ति को हटा देगा।

उदाहरण # 3

हम कई तरीकों का उपयोग करके पंक्ति को हटा सकते हैं। उपरोक्त उदाहरण में, हमने CELLS संपत्ति का उपयोग करके पंक्ति को हटा दिया है। अब हम देखेंगे कि ROWS प्रॉपर्टी का उपयोग करके कैसे डिलीट करें।

अब हमें यह उल्लेख करने की आवश्यकता है कि हमें हटाने वाली पंक्ति क्या है। मान लीजिए कि हमें 5 वीं पंक्ति को हटाने की आवश्यकता है ।

अब संपत्ति "EntireRow" संपत्ति का उपयोग करें।

संपत्ति का चयन करने के बाद, हमें क्या करना चाहिए अर्थात विधि। हमें पंक्ति को हटाने की आवश्यकता है।

कोड:

उप DeleteRow_Example3 () पंक्तियाँ (5) .EntireRow.Delete समाप्ति उप

तो, यह कोड 5 वीं पंक्ति को हटा देगा ।

उदाहरण # 4

रेंज ऑब्जेक्ट का उपयोग करके एकाधिक पंक्तियों को हटाएं

हम कई पंक्तियों को कैसे हटाते हैं?

हम एक से अधिक पंक्ति हटाने के लिए VBA RANGE ऑब्जेक्ट का उपयोग कर सकते हैं। मान लें कि आपके पास A1 से A6 कोशिकाओं तक कुछ मान हैं।

अब मैं पहली 5 पंक्तियों को हटाना चाहता हूँ, इसलिए मैं रेंज ऑब्जेक्ट का उपयोग करके इन पंक्तियों को "रेंज (" A1: A "") के रूप में संदर्भित कर सकता हूं

कोड:

सब DeleteRow_Example4 () रेंज ("A1: A5") एंड सब

अब मैं शब्द "EntireRow" संपत्ति का उपयोग करना चाहता हूं।

कोड:

सब DeleteRow_Example4 () रेंज ("A1: A5")। EntireRow End Sub

इस पूरी पंक्ति में, हमें हटाने की विधि करने की आवश्यकता है, इसलिए डिलीट विधि का उपयोग करें।

कोड:

सब DeleteRow_Example4 () रेंज ("A1: A5")। EntireRow.Delete End Sub

अब यह चयनित पंक्तियों को हटा देगा।

उदाहरण # 5

Delete Rows Based On Cell Value

We can also use this “EntireRow.Delete” method to delete the row based on cell value in VBA. For example, I have Yes & No values from cell A1 to A10.

Now we need to delete the rows which have the value “No.” To perform this task, we need to use the function “IF” with loops to delete all the rows which have the value of “No.”

The below code will do the job for us.

Code:

Sub DeleteRow_Example5() Dim k As Integer For k = 10 To 1 Step -1 If Cells(k, 1).Value = "No" Then Cells(k, 1).EntireRow.Delete End If Next k End Sub

Example #6

Delete All the Blank Cells Rows

There are situations where we need to delete the entire row if any of the cells in the range are blank. For example, I have below set of data.

All the colored cells are blank, so I need to delete the entire row. We can perform this task with two sets of code. Below is the code.

Code:

Sub DeleteRow_Example6() Range("A1:F10").SpecialCells(xlCellTypeBlanks).EntireRow.Delete End Sub

This will identify the blank cells in the range A1 to F10.IF any blank cells are found, they will delete the entire row.

The problem with this code is it will only delete the blank cell’s row only in the range A1 to F10, but if any cells are blank in any other cells, it will not delete. So keeping this in mind, I have written one more code.

Code:

सब डिलीटRow_Example7 () डिम रेंजटोडीडेट रेंज के रूप में डिम डिलेटियनरेंज के रूप में रेंज सेट रेंजटोडीटेल = एप्लीकेशन.इन्पुटबॉक्स ("कृपया रेंज का चयन करें", "ब्लैंक सेल्स रेज़ डेजियनशन", टाइप करें: = 8) सेट डिलेटरीरेंज = रेंजटॉइटल रेंजटाउनडाउन। .टेलीट एंड सब

जब आप इस कोड को चलाते हैं, तो सबसे पहले, यह आपके सामने दिखने वाले इनपुट बॉक्स के साथ सीमा का चयन करने के लिए कहेगा।

सीमा का चयन करने के बाद, आपको ओके पर क्लिक करना होगा। यह चयनित श्रेणी में सभी रिक्त कक्ष पंक्तियों को हटा देगा।

दिलचस्प लेख...