Inaondoa visanduku tupu kutoka kwa safu

Uundaji wa shida

Tuna safu ya visanduku vilivyo na data iliyo na visanduku tupu:

 

Kazi ni kuondoa seli tupu, na kuacha seli tu na habari.

Njia 1. Mbaya na haraka

  1. Kuchagua masafa asili
  2. Bonyeza kitufe F5, kitufe kinachofuata Highlight (Maalum). Katika dirisha linalofungua, chagua Seli tupu(Nafasi) na bonyeza OK.

    Inaondoa visanduku tupu kutoka kwa safu

    Seli zote tupu katika safu zimechaguliwa.

  3. Tunatoa amri katika menyu kufuta seli zilizochaguliwa: bonyeza-click- Futa visanduku (Futa visanduku) na mabadiliko ya juu.

Njia ya 2: Mfumo wa safu

Ili kurahisisha, hebu tutaje safu zetu za kufanya kazi kwa kutumia Jina la Meneja (Meneja wa Jina) tab formula (Mfumo) au, katika Excel 2003 na zaidi, menyu Ingiza - Jina - Weka (Ingiza - Jina - Fafanua)

 

Taja safu B3:B10 Kuwa Tupu, safu D3:D10 - HakunaTupu. Masafa lazima yawe na ukubwa sawa kabisa, na yanaweza kupatikana popote yanahusiana.

Sasa chagua seli ya kwanza ya safu ya pili (D3) na uweke fomula hii ya kutisha ndani yake:

=IF(ROW() -ROW(NoEmpty)+1>NOTROWS(YesEmpty)-COUNTBLLANK(YesTupu);””;INDIRECT(ANWANI(CHINI zaidi((IF(Tupu<>“),ROW(Tupu);ROW() + SAFU (Kuna Tupu))); MSTARI()-SAFU(Hakuna Tupu)+1); SAFU(Kuna Tupu); 4)))

Katika toleo la Kiingereza itakuwa:

=IF(ROW()-ROW(HakunaTupu)+1>ROWS(Tupu)-COUNTBLANK(Tupu),"",,INDIRECT(ANWANI(NDOGO((IF(Tupu<>“”),ROW(Tupu),ROW() +ROWS(HaveEmpty))),ROW()-ROW(HakunaTupu)+1),SAFU(HaveEmpty),4)))

Zaidi ya hayo, lazima iingizwe kama fomula ya safu, yaani bonyeza baada ya kubandika kuingia (kama kawaida) na Ctrl + Shift + Ingiza. Sasa fomula inaweza kunakiliwa chini kwa kutumia kukamilisha kiotomatiki (buruta msalaba mweusi kwenye kona ya chini ya kulia ya seli) - na tutapata safu asili, lakini bila seli tupu:

 

Njia ya 3. Kazi ya desturi katika VBA

Ikiwa kuna mashaka kwamba mara nyingi utalazimika kurudia utaratibu wa kuondoa seli tupu kutoka kwa safu, basi ni bora kuongeza kazi yako mwenyewe ya kuondoa seli tupu kwa kiwango kilichowekwa mara moja, na uitumie katika kesi zote zinazofuata.

Ili kufanya hivyo, fungua Kihariri cha Visual Basic (ALT + F11), ingiza moduli mpya tupu (menu Ingiza - Moduli) na unakili maandishi ya kazi hii hapo:

Utendakazi wa NoBlanks(Safu ya Data Kama Masafa) Kama Lahaja() Dim N Kwa Muda Mrefu Dim N2 Kwa Muda Mrefu Dim Rng Kama Masafa Hafifu ya MaxSeli Kwa Matokeo ya Dim ya Muda Mrefu() Kama Lahaja Dim R As Long Dim C As Long MaxCells = Application.WorksheetFunction.Max( _ Application.Caller.Cells.Count, DataRange.Cells.Count) ReDim ReDim Result(1 Hadi MaxCells, 1 Hadi 1) Kwa Kila Rng Katika Safu ya Data.Seli Ikiwa Rng.Value <> vbNullString Kisha N = N + 1 Tokeo(N, 1 ) = Mwisho wa Thamani Ikiwa Rng Inayofuata Kwa N2 = N + 1 Hadi Matokeo ya MaxCells(N2, 1) = vbNullString Inayofuata N2 Ikiwa Application.Caller.Rows.Count = 1 Kisha NoBlanks = Application.Transpose(Result) Else NoBlanks = Result Maliza Ikiwa Mwisho wa Kazi  

Usisahau kuhifadhi faili na urudi kutoka kwa Kihariri cha Visual Basic hadi Excel. Kutumia kazi hii katika mfano wetu:

  1. Chagua safu ya kutosha ya seli tupu, kwa mfano F3:F10.
  2. Nenda kwenye menyu Ingiza - Kazi (Ingiza - Kazi)au bonyeza kitufe Weka kipengele (Ingiza Kazi) tab formula (Mfumo) katika matoleo mapya zaidi ya Excel. Katika kategoria Mtumiaji Amefafanuliwa (Mtumiaji Amefafanuliwa) chagua kazi yetu NoBlanks.
  3. Bainisha masafa ya chanzo na voids (B3:B10) kama hoja ya kukokotoa na ubonyeze Ctrl + Shift + Ingizakuingiza chaguo za kukokotoa kama fomula ya safu.

:

  • Kufuta safu tupu zote kwenye jedwali mara moja na macro rahisi
  • Kuondoa safu mlalo tupu katika laha ya kazi mara moja kwa kutumia programu jalizi ya PLEX
  • Jaza haraka seli zote tupu
  • Je! ni macros, wapi kuingiza msimbo wa jumla katika VBA

 

Acha Reply