दायराबाट खाली कक्षहरू हटाउँदै

समस्याको सूत्रीकरण

हामीसँग डेटा भएको कक्षहरूको दायरा छ जसमा खाली कक्षहरू छन्:

 

कार्य भनेको खाली कक्षहरू हटाउनु हो, केवल जानकारीको साथ कक्षहरू छोडेर।

विधि 1. रफ र छिटो

  1. मूल दायरा चयन गर्दै
  2. कुञ्जी थिच्नुहोस् F5, अर्को बटन हाइलाइट (विशेष)। खुल्ने विन्डोमा, चयन गर्नुहोस् खाली कक्षहरू(रिक्त) र क्लिक गर्नुहोस् OK.

    दायराबाट खाली कक्षहरू हटाउँदै

    दायराका सबै खाली कक्षहरू चयन गरिएका छन्।

  3. हामीले चयन गरिएका कक्षहरू मेटाउन मेनुमा आदेश दिन्छौं: दायाँ-क्लिक गर्नुहोस्- कक्षहरू मेटाउनुहोस् (सेलहरू मेटाउनुहोस्) माथिको शिफ्ट संग।

विधि २: एरे सूत्र

सरल बनाउनको लागि, प्रयोग गरेर हाम्रो कार्य दायराहरू नाम दिनुहोस् नाम प्रबन्धक (नाम प्रबन्धक) ट्याब सूत्र (सूत्रहरू) वा, Excel 2003 र पुरानो मा, मेनु घुसाउनुहोस् - नाम - असाइन गर्नुहोस् (सम्मिलित गर्नुहोस् - नाम - परिभाषित गर्नुहोस्)

 

दायरा B3:B10 नाम दिनुहोस् खाली गर्नुहोस्, दायरा D3:D10 - कुनै पनि खाली छैन। दायराहरू कडा रूपमा एउटै आकारको हुनुपर्छ, र एकअर्काको सापेक्ष जहाँ पनि अवस्थित हुन सक्छ।

अब दोस्रो दायरा (D3) को पहिलो सेल चयन गर्नुहोस् र यसमा यो डरलाग्दो सूत्र प्रविष्ट गर्नुहोस्:

=IF(ROW() -ROW(NoEmpty)+1>NOTROWS(YesEmpty)-COUNTBLANK(YesEmpty);"";INDIRECT(ADDRESS(LOWEST((IF(Empty<>""),ROW(खाली);ROW() + ROWS(त्यहाँ खाली छन्))); LINE()-ROW(खाली छैन)+1); COLUMN(त्यहाँ खाली छन्); 4)))

अंग्रेजी संस्करणमा यो हुनेछ:

=IF(ROW()-ROW(NoEmpty)+1>ROWS(खाली)-COUNTBLANK(खाली),"", INDIRECT(ADDRESS(SMALL((IF(Empty<>""),ROW(खाली),ROW() +ROWS(खाली छ)),ROW()-ROW(NoEmpty)+1), COLUMN(HaveEmpty),4)))

यसबाहेक, यसलाई एरे सूत्रको रूपमा प्रविष्ट गर्नुपर्छ, जस्तै टाँसिएपछि थिच्नुहोस् प्रविष्ट गर्नुहोस् (सामान्य रूपमा) र Ctrl+Shift+Enter। अब सूत्र स्वत: पूर्ण प्रयोग गरेर प्रतिलिपि गर्न सकिन्छ (सेलको तल्लो दाहिने कुनामा कालो क्रस तान्नुहोस्) - र हामी मूल दायरा प्राप्त गर्नेछौं, तर खाली कक्षहरू बिना:

 

विधि 3. VBA मा अनुकूलन प्रकार्य

यदि त्यहाँ एक शङ्का छ कि तपाईले प्राय: दायराहरूबाट खाली कक्षहरू हटाउनको लागि प्रक्रिया दोहोर्याउनु पर्छ, त्यसपछि मानक सेटमा एक पटक खाली कक्षहरू हटाउनको लागि आफ्नै प्रकार्य थप्नु राम्रो हुन्छ, र यसलाई सबै पछिल्ला केसहरूमा प्रयोग गर्नुहोस्।

यो गर्नका लागि, भिजुअल बेसिक सम्पादक खोल्नुहोस् (ALT+F11), नयाँ खाली मोड्युल घुसाउनुहोस् (मेनु घुसाउनुहोस् - मोड्युल) र त्यहाँ यस प्रकार्यको पाठ प्रतिलिपि गर्नुहोस्:

प्रकार्य NoBlanks(DataRange को रूपमा दायरा) variant() Dim N को रूपमा लामो Dim N2 को रूपमा लामो Dim Rng को रूपमा दायरा Dim MaxCells लामो मधुरो नतिजाको रूपमा () भेरियन्ट Dim R को रूपमा लामो Dim C को रूपमा लामो MaxCells = Application.WorksheetFunction.Max( _ Application.Caller.Cells.Count, DataRange.Cells.Count) ReDim परिणाम (1 देखि MaxCells, 1 देखि 1) प्रत्येक Rng को लागि DataRange.Cells यदि Rng.Value <> vbNullString त्यसपछि N = N + 1 नतिजा(N, 1 ) = Rng.Value End यदि अर्को Rng को लागि N2 = N + 1 मा MaxCells Result(N2, 1) = vbNullString अर्को N2 यदि Application.Caller.Rows.Count = 1 त्यसपछि NoBlanks = Application.Transpose(नतिजा) अन्यथा NoBlanks = परिणाम End if End प्रकार्य  

फाइल बचत गर्न र Visual Basic Editor बाट Excel मा फर्कन नबिर्सनुहोस्। हाम्रो उदाहरणमा यो प्रकार्य प्रयोग गर्न:

  1. खाली कक्षहरूको पर्याप्त दायरा चयन गर्नुहोस्, उदाहरणका लागि F3:F10।
  2. मेनूमा जानुहोस् घुसाउनुहोस् - प्रकार्य (घुसाउनुहोस् - कार्य)वा बटनमा क्लिक गर्नुहोस् प्रकार्य घुसाउनुहोस् (समावेश घुसाउनुहोस्) ट्याब सूत्र (सूत्रहरू) Excel को नयाँ संस्करणहरूमा। श्रेणीमा प्रयोगकर्ता परिभाषित (प्रयोगकर्ता परिभाषित) हाम्रो कार्य चयन गर्नुहोस् खाली छैन.
  3. प्रकार्य तर्कको रूपमा voids (B3:B10) को साथ स्रोत दायरा निर्दिष्ट गर्नुहोस् र थिच्नुहोस् Ctrl+Shift+Enterएरे सूत्रको रूपमा प्रकार्य प्रविष्ट गर्न।

:

  • साधारण म्याक्रोको साथ एकै पटक तालिकामा सबै खाली पङ्क्तिहरू मेटाउँदै
  • PLEX एड-अन प्रयोग गरेर एकै पटक कार्यपत्रमा सबै खाली पङ्क्तिहरू हटाउँदै
  • सबै खाली कक्षहरू छिटो भर्नुहोस्
  • म्याक्रोहरू के हुन्, VBA मा म्याक्रो कोड कहाँ घुसाउने

 

जवाफ छाड्नुस्