Korisne informacije u statusnoj traci

Netko poput, ali ja osobno trebam statusnu traku samo u 2-3 slučaja:

  • nakon filtriranja, prikazuje broj preostalih vrijednosti nakon odabira
  • kada je raspon odabran, prikazuje zbroj, prosjek i broj odabranih ćelija
  • u slučaju teških datoteka, napredak u ponovnom izračunavanju formula možete vidjeti u knjizi.

Ne toliko za crtu koja zauzima gotovo cijelu širinu ekrana i cijelo vrijeme visi na njemu. Pokušajmo proširiti ovaj skromni popis i dodati mu još nekoliko korisnih značajki 🙂

Opća načela za upravljanje statusnom trakom

Upravljanje statusnom trakom s Visual Basicom vrlo je jednostavno. Da biste prikazali svoj tekst u njemu, možete koristiti jednostavnu makronaredbu:

Sub MyStatus() Application.StatusBar = "Privet!" End Sub  

Nakon pokretanja dobivamo:

Korisne informacije u statusnoj traci

Da biste vratili izvorno stanje statusne trake, trebat će vam isti kratki "anti-makro":

Sub MyStatus_Off() Application.StatusBar = False End Sub  

U osnovnoj verziji, kao što vidite, sve je vrlo jednostavno. Sada pokušajmo razviti ideju...

Adresa odabranog raspona u statusnoj traci

 U gornjem lijevom kutu prozora programa Excel u traci formule uvijek možete vidjeti adresu trenutne ćelije. Ali ako je odabran cijeli raspon, tada, nažalost, tamo nećemo vidjeti adresu odabira - prikazuje se ista jedna aktivna ćelija:

Korisne informacije u statusnoj traci

Da biste riješili ovaj problem, možete koristiti jednostavnu makronaredbu koja će prikazati adresu odabranog područja u statusnoj traci. Štoviše, ova bi se makronaredba trebala pokrenuti automatski, sa bilo kojom promjenom odabira na bilo kojem listu - za to ćemo je smjestiti u rukovatelj događajima Promjena izbora naša knjiga.

Otvorite Visual Basic Editor koristeći istoimeni gumb na kartici razvijač (Programer) ili tipkovnim prečacima Lijevi Alt+F11. Pronađite svoju knjigu u gornjem lijevom kutu ploče Projekt i dvostrukim klikom otvorite modul u njoj Ova knjiga (Ova radna knjiga):

U prozoru koji se otvori kopirajte i zalijepite sljedeći makro kod:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Izdvojeno: " & Selection.Address(0, 0) End Sub  

Sada, kada se odabere bilo koji raspon (uključujući više od jednog!), njegova adresa će biti prikazana u statusnoj traci:

Korisne informacije u statusnoj traci

Kako biste spriječili spajanje adresa nekoliko raspona odabranih pomoću Ctrl, možete dodati malo poboljšanje – upotrijebite funkciju Zamijeni da zamijenite zarez zarezom s razmakom:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Izdano: " & Replace(Selection.Address(0, 0), ",", ", ") End Sub  

Broj odabranih ćelija u statusnoj traci

Kada je odabran bilo koji raspon, broj nepraznih odabranih ćelija prema zadanim se postavkama prikazuje na desnoj strani statusne trake. Ponekad morate znati broj dodijeljenih. Ovaj se zadatak također može izvršiti jednostavnom makronaredbom za rukovanje događajem knjige SelectionChange, kao u prethodnom primjeru. Trebat će vam makro poput:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Dim CellCount As Variant, rng As Range For Every rng In Selection.Areas 'Iteriraj kroz sve odabire RowsCount = rng.Rows.Count 'broj redaka ColumnsCount = rng.Columns . Count 'broj stupaca CellCount = CellCount + RowsCount * ColumnsCount 'akumulirati ukupan broj ćelija Next 'prikaz na statusnoj traci Application.StatusBar = "Selected: " & CellCount & "cells" End Sub  

Ova makronaredba prolazi kroz sva područja odabrana tipkom Ctrl (ako ih ima više od jednog), pohranjuje broj redaka i stupaca u svakom području u varijablama RowsCount i ColumnsCount i akumulira broj ćelija u varijabli CellCount, koja se zatim prikazuje u statusnoj traci. Na poslu će izgledati ovako:

Korisne informacije u statusnoj traci

Naravno, možete kombinirati ovu i prethodnu makronaredbu za prikaz i adrese odabranog raspona i broja ćelija u isto vrijeme. Trebate promijeniti samo jedan pretposljednji red u:

Application.StatusBar = "Odabrano: " & Zamijeni(Selection.Address(0, 0), ",", ", ") & " - ukupno " & Broj ćelija & " ćelije"  

Tada će slika biti prilično divna:

Korisne informacije u statusnoj traci

Pa, mislim da ste shvatili. Predložite u komentarima - što bi još bilo korisno za prikaz u statusnoj traci?

  • Što su makronaredbe, kako rade, kako ih koristiti i kreirati
  • Zgodan odabir koordinata na Excel listu
  • Kako složene formule učiniti vizualnijima

Ostavi odgovor