Kako koristiti za svaku sljedeću petlju s zbirkama u VBA Excel 2016

VBA podržava još jednu vrstu petlje u programu Excel 2016: petlju kroz svaki objekt u kolekciji objekata. Kolekcija se, kao što možda znate, sastoji od više objekata istog tipa. Na primjer, Excel ima zbirku svih otvorenih radnih knjiga (zbirka Radne knjige), a svaka radna knjiga ima zbirku radnih listova (zbirka Radni listovi).

Kada trebate proći kroz svaki objekt u kolekciji, koristite strukturu Za svaki sljedeći. Sljedeći primjer prolazi kroz svaki radni list u aktivnoj radnoj knjizi i briše radni list ako je prazan:

Pod DeleteEmptySheets()
  Dim WkSht kao radni list
  Application.DisplayAlerts = False
  Za svaki WkSht u ActiveWorkbook.Worksheets
    Ako je WorksheetFunction.CountA(WkSht.Cells) = 0 Tada
      WkSht.Izbriši
    Završi ako
  Sljedeći WkSht
  Application.DisplayAlerts = Točno
Kraj Sub

U ovom primjeru, varijabla WkSht je varijabla objekta koja predstavlja svaki radni list u radnoj knjizi. Ništa nije posebno u vezi s imenom varijable WkSht; možete koristiti bilo koje ime varijable koje želite.

Kôd prolazi kroz svaki radni list i određuje prazan list prebrojavanjem ćelija koje nisu prazne. Ako je taj broj nula, list je prazan i briše se. Primijetite da je postavka DisplayAlerts isključena dok petlja radi svoje. Bez te izjave, Excel iskače upozorenje svaki put kada se list sprema izbrisati.

Ako su svi radni listovi u radnoj knjizi prazni, dobit ćete pogrešku kada Excel pokuša izbrisati jedini list. Obično biste napisali kod za rješavanje te situacije.

Evo još jednog primjera za svaki sljedeći. Ovaj postupak koristi petlju za skrivanje svih radnih listova u aktivnoj radnoj knjizi osim aktivnog lista.

Sub HideSheets()
  Dim Sht kao radni list
  Za svaki Sht u ActiveWorkbook.Worksheets
    Ako Sht.Name <> ActiveSheet.Name Onda
      Sht.Visible = xlSheetHidden
    Završi ako
  Sljedeći Sht
Kraj Sub

Postupak HideSheets provjerava naziv lista. Ako nije isto kao naziv aktivnog lista, list je skriven. Primijetite da svojstvo Visible nije Boolean. Ovo svojstvo zapravo može poprimiti bilo koju od tri vrijednosti, a Excel nudi tri ugrađene konstante. Ako vas zanima treća mogućnost (xlVeryHidden), provjerite sustav pomoći.

Ono što se sakrije mora na kraju postati neskriveno, pa evo makronaredbe koja otkriva sve radne listove u aktivnoj radnoj knjizi:

Sub UnhideSheets()
  Dim Sht kao radni list
  Za svaki Sht u ActiveWorkbook.Worksheets
    Sht.Visible = xlSheetVisible
  Sljedeći Sht
Kraj Sub

Nije iznenađujuće da možete kreirati ugniježđene petlje For Each-Next. Procedura CountBold petlja kroz svaku ćeliju u korištenom rasponu na svakom radnom listu u svakoj otvorenoj radnoj knjizi i prikazuje broj ćelija koje su oblikovane podebljano:

Pod Count Bold()
  Dim WBook As Workbook
  Zatamnite WSheet kao radni list
  Zatamnjena ćelija kao raspon
  Dim Cnt As Long
  Za svaku radnu knjigu u radnim bilježnicama
    Za svaki WSheet u WBook.Worksheets
      Za svaku ćeliju u WSheet.UsedRange
        Ako je Cell.Font.Bold = True, onda je Cnt = Cnt + 1
      Sljedeća ćelija
    Sljedeći WSheet
  Sljedeća knjiga
  MsgBox Cnt & "pronađene podebljane ćelije"
Kraj Sub

Leave a Comment

Kako postaviti upit u bazu podataka MS Access 2019

Kako postaviti upit u bazu podataka MS Access 2019

Naučite kako postaviti upite u Access bazi podataka uz jednostavne korake i savjete za učinkovito filtriranje i sortiranje podataka.

Osnove tabulatora u programu Word 2013

Osnove tabulatora u programu Word 2013

Tabulatori su oznake položaja u odlomku programa Word 2013 koje određuju kamo će se točka umetanja pomaknuti kada pritisnete tipku Tab. Otkrijte kako prilagoditi tabulatore i optimizirati svoj rad u Wordu.

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Kako odabrati i poništiti odabir blokova teksta u Wordu 2010

Word 2010 nudi mnoge načine označavanja i poništavanja odabira teksta. Otkrijte kako koristiti tipkovnicu i miš za odabir blokova. Učinite svoj rad učinkovitijim!

Kako uvući pasus u Wordu 2013

Kako uvući pasus u Wordu 2013

Naučite kako pravilno postaviti uvlaku za odlomak u Wordu 2013 kako biste poboljšali izgled svog dokumenta.

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Kako otvoriti i zatvoriti PowerPoint 2019 prezentacije

Naučite kako jednostavno otvoriti i zatvoriti svoje Microsoft PowerPoint 2019 prezentacije s našim detaljnim vodičem. Pronađite korisne savjete i trikove!

Kako crtati jednostavne objekte u PowerPointu 2013

Kako crtati jednostavne objekte u PowerPointu 2013

Saznajte kako crtati jednostavne objekte u PowerPoint 2013 uz ove korisne upute. Uključuje crtanje linija, pravokutnika, krugova i više.

Kako filtrirati podatke u programu Access 2016

Kako filtrirati podatke u programu Access 2016

U ovom vodiču vam pokazujemo kako koristiti alat za filtriranje u programu Access 2016 kako biste lako prikazali zapise koji dijele zajedničke vrijednosti. Saznajte više o filtriranju podataka.

Formule za zaokruživanje brojeva u Excelu

Formule za zaokruživanje brojeva u Excelu

Saznajte kako koristiti Excelove funkcije zaokruživanja za prikaz čistih, okruglih brojeva, što može poboljšati čitljivost vaših izvješća.

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Kako dizajnirati različita zaglavlja i podnožja za različite stranice u programu Word 2013

Zaglavlje ili podnožje koje postavite isto je za svaku stranicu u vašem Word 2013 dokumentu. Otkrijte kako koristiti različita zaglavlja za parne i neparne stranice.

Excel izvješća: prilagođeno oblikovanje brojeva

Excel izvješća: prilagođeno oblikovanje brojeva

Poboljšajte čitljivost svojih Excel izvješća koristeći prilagođeno oblikovanje brojeva. U ovom članku naučite kako se to radi i koja su najbolja rješenja.