Lazımsız sətir və sütunların gizlədilməsi/göstərilməsi

Problemin formalaşdırılması

Tutaq ki, elə bir masamız var ki, onunla hər gün “rəqs etmək” lazımdır:

 

Cədvəl kimə kiçik görünür - zehni olaraq onu sahəyə görə iyirmi dəfə çoxaltın, daha bir neçə blok və iki onlarla böyük şəhər əlavə edin. 

Vəzifə hazırda iş üçün lazımsız olan sətir və sütunları müvəqqəti olaraq ekrandan silməkdir, yəni, 

  • yalnız rübləri tərk edərək, təfərrüatları aylara görə gizləyin
  • cəmini aylar və rüblər üzrə gizlət, yalnız yarım il ərzində cəmini buraxın
  • hal-hazırda lazımsız olan şəhərləri gizlətmək (Mən Moskvada işləyirəm – Sankt-Peterburqu niyə görməliyəm?) və s.

Real həyatda belə masaların nümunələri dənizi var.

Metod 1: Satır və sütunların gizlədilməsi

Metod, açığı, primitivdir və çox rahat deyil, lakin bu barədə iki söz demək olar. Vərəqdə əvvəllər seçilmiş hər hansı sətir və ya sütunlar sütun və ya sətir başlığına sağ tıklayarak və kontekst menyusundan əmri seçməklə gizlənə bilər. Gizlət (Gizlət):

 

Əks ekran üçün bitişik sətirləri/sütunları seçin və sağ klikləməklə müvafiq olaraq menyudan seçin, göstərmək (Göstər).

Problem ondadır ki, hər bir sütun və cərgə ilə ayrı-ayrılıqda məşğul olmalısınız, bu isə əlverişsizdir.

Metod 2. Qruplaşdırma

Birdən çox satır və ya sütun seçsəniz və sonra menyudan seçin Data – Qrup və Struktur – Qrup (Məlumat - Qrup və Kontur - Qrup), sonra onlar kvadrat mötərizədə (qruplaşdırılaraq) alınacaqlar. Bundan əlavə, qruplar bir-birinə daxil edilə bilər (8 yuva səviyyəsinə qədər icazə verilir):

Daha rahat və daha sürətli yol, əvvəlcədən seçilmiş sətir və ya sütunları qruplaşdırmaq üçün klaviatura qısa yolundan istifadə etməkdir. Alt+Shift+Sağ Ox, və qrupdan çıxarmaq üçün Alt+Shift+Sol Ox, müvafiq olaraq.

Lazımsız məlumatları gizlətməyin bu üsulu daha rahatdır - ya " düyməsi ilə klikləyə bilərsiniz.+"Və ya"-", və ya vərəqin yuxarı sol küncündə ədədi qruplaşdırma səviyyəsi olan düymələrdə - onda istədiyiniz səviyyənin bütün qrupları bir anda yığışdırılacaq və ya genişləndiriləcək.

Həmçinin, Cədvəlinizdə qonşu xanaların cəmlənməsi funksiyasına malik xülasə sətirləri və ya sütunları varsa, yəni bir şans (100% doğru deyil) Excel bütün lazımi qrupları yaradacaq cədvəldə bir hərəkətlə - menyu vasitəsilə Data – Qrup və Struktur – Struktur yaradın (Məlumat - Qrup və Kontur - Kontur yaradın). Təəssüf ki, belə bir funksiya çox gözlənilməz şəkildə işləyir və bəzən mürəkkəb cədvəllərdə tam cəfəngiyat edir. Amma cəhd edə bilərsiniz.

Excel 2007 və daha yeni versiyalarda bütün bu sevinclər nişandadır Tarix (Tarix) qrupda   struktur (Kontur):

Metod 3. İşarələnmiş sətirlərin/sütunların makro ilə gizlədilməsi

Bu üsul bəlkə də ən çox yönlüdür. Gəlin vərəqimizin əvvəlinə boş sətir və boş sütun əlavə edək və gizlətmək istədiyimiz sətir və sütunları istənilən ikona ilə qeyd edək:

İndi Visual Basic Redaktorunu açaq (ALT + F11), kitabımıza yeni boş modul daxil edin (menyu Daxil et - Modul) və orada iki sadə makronun mətnini kopyalayın:

Sub Gizlət() Dim xana Aralıq Tətbiqi kimi.ScreenUpdating = Yanlış 'ActiveSheet.UsedRange.Rows(1).Cells-dəki hər bir xana üçün sürətləndirmək üçün ekran yeniləməsini deaktiv edin. 'Birinci sıradakı bütün xanaları təkrarlayın Əgər cell.Value = "x olarsa. " Sonra xana .EntireColumn.Hidden = True 'əgər x xanasındadırsa - sütunu gizlət Sonrakı ActiveSheet.UsedRange.Columns(1)-də Hər bir xana üçün). cell.EntireRow.Hidden = True 'əgər x xanasındadırsa - cərgəni gizlədin Next Application.ScreenUpdating = True End Sub Sub Show() Columns.Hidden = False 'bütün gizlədilən sətir və sütunları ləğv et Rows.Hidden = False End Sub  

Təxmin etdiyiniz kimi, makro Gizlət gizlədir və makro göstərmək – Geri etiketlənmiş sətir və sütunları göstərir. İstəyirsinizsə, makrolara isti düymələr təyin edilə bilər (Alt + F8 və düymə Parameters) və ya tabdan işə salmaq üçün birbaşa vərəqdə düymələr yaradın İnkişaf etdirici - Daxil et - Düymə (Tərtibatçı — Daxil et — Düymə).

Metod 4. Verilmiş rənglə sətirlərin/sütunların gizlədilməsi

Tutaq ki, yuxarıdakı misalda biz, əksinə, cəmiləri, yəni bənövşəyi və qara cərgələri və sarı və yaşıl sütunları gizlətmək istəyirik. Sonra əvvəlki makrosumuz "x" nin varlığını yoxlamaq əvəzinə, təsadüfi seçilmiş nümunə hüceyrələri ilə doldurma rənginin uyğunluğunu yoxlamaq üçün bir yoxlama əlavə etməklə bir qədər dəyişdirilməlidir:

Sub HideByColor() Dim xana Diapazon Tətbiqi kimi.ScreenUpdating = ActiveSheet.UsedRange.Rows(2) Hər bir xana üçün Yanlış. Hüceyrə.Interior.Rəng = Range("F2").Daxili.Rəng Sonra xana.Bütün Sütun.Gizli = Doğrudursa, xana.Daxili.Rəng = Aralıq("K2").Daxili.Rəng Sonra xana.Bütün Sütun.Gizli = Doğrudur Sonrakı ActiveSheet.UsedRange.Columns(2). Hüceyrə.Daxili.Rəng = Aralıq. ("D6").Daxili.Rəng Sonra hücrə.BütünSıra.Gizli = Doğrudursa, xana.Daxili.Rəng = Aralıq("B11").Daxili.Rəng Sonra xana.EntireRow.Gizli = Doğru Sonrakı Tətbiq.ScreenUpdating = Həqiqi Son Alt  

Bununla belə, bir xəbərdarlıq haqqında unutmamalıyıq: bu makro yalnız mənbə cədvəlinin xanaları əl ilə rənglə doldurulduqda və şərti formatlaşdırmadan istifadə edilmədikdə işləyir (bu, Interior.Color xassəsinin məhdudiyyətidir). Beləliklə, məsələn, şərti formatlaşdırmadan istifadə edərək cədvəlinizdə nömrənin 10-dan az olduğu bütün sövdələşmələri avtomatik olaraq vurğulasanız:

Lazımsız sətir və sütunların gizlədilməsi/göstərilməsi

… və onları bir hərəkətlə gizlətmək istəyirsən, onda əvvəlki makro “bitirməli” olacaq. Əgər sizdə Excel 2010-2013 varsa, o zaman əmlak əvəzinə istifadə edərək çıxa bilərsiniz Daxili əmlak DisplayFormat.İnteryer, necə qurulduğundan asılı olmayaraq xananın rəngini çıxarır. Mavi xətləri gizlətmək üçün makro bu kimi görünə bilər:

Sub HideByConditionalFormattingColor() Dim xanası Diapazon Tətbiqi kimi.ScreenUpdating = ActiveSheet.UsedRange.Columns(1).Hüceyrə.DisplayFormat.Interior.Rəng = Range("G2").DisplayFormat.Columns(XNUMX)-dəki hər bir xana üçün False. .EntireRow.Hidden = True Next Application.ScreenUpdating = True End Sub  

Hüceyrə G2 rəng müqayisəsi üçün nümunə kimi götürülür. Təəssüf ki, əmlak DisplayFormat Excel-də yalnız 2010-cu il versiyasından başlayaraq ortaya çıxdı, buna görə də Excel 2007 və ya daha köhnə versiyanız varsa, başqa yollar tapmalı olacaqsınız.

  • Makro nədir, makro kodu hara daxil etmək, onlardan necə istifadə etmək
  • Çoxsəviyyəli siyahılarda avtomatik qruplaşdırma

 

Cavab yaz