VBA - 2 कोशिकाओं के लिए IF फ़ंक्शन का उपयोग करना

मुद्दा

मैं निम्नलिखित स्थिति के लिए IF लूप बनाने के उत्तर के लिए हर जगह अनुपयुक्त रूप से देख रहा हूं:

  • मेरे पास विभिन्न शब्दों जैसे एक्सेल शीट है। नाम, सभी तरह से नीचे कॉलम ए।
  • मैं एक लूप बनाना चाहता हूं जहां अगर दो कोशिकाओं के अलग-अलग नाम हैं, तो उनके बीच 2 खाली पंक्तियां डाली जाती हैं।

जैसे।

सेल A1: ऐनी

सेल A2: ऐनी

सेल A3: बॉब

सेल ए 4: चार्ली

तो A1 और A2 के बीच दो खाली पंक्तियों को डाला जाएगा। बॉब और चार्ली के बीच एक और 2 खाली पंक्तियाँ डाली गईं।

उपाय

इस मैक्रो को आज़माएं

जब आप मैक्रो का आह्वान करते हैं ...

एक इनपुट बॉक्स आएगा। उदाहरण के लिए A10 के लिए प्रारंभिक सेल पता भरें।

 उप परीक्षण () कॉलम ("ए: ए")। सॉर्ट की 1: = रेंज ("ए 1"), ऑर्डर 1: = xlAscending, Header: = xlGuess Dim j As Integer, k As Integer, m As Integer, r As String r = InputBox ("संदर्भ के तहत पहली सेल टाइप करें जैसे A10") m = Range (r) .Row j = Range ("A10")। End (xlDown) .Row 'j, k = j से m + के लिए अंतिम पंक्ति है। 1 स्टेप -1 यदि सेल (k, 1) सेल्स (k - 1, 1) तो रेंज (सेल्स (k, 1), सेल्स (k + 1, 1))। EntireRow.Insert एंड अगर अगला k एंड सब उप। 

ध्यान दें

मंच पर इस टिप के लिए venkat1926 का धन्यवाद।

पिछला लेख अगला लेख

शीर्ष युक्तियाँ