Nyttig informasjon i statuslinjen

Noen liker, men jeg trenger personlig en statuslinje bare i 2-3 tilfeller:

  • etter filtrering viser den antall gjenværende verdier etter valget
  • når et område er valgt, viser det summen, gjennomsnittet og antall valgte celler
  • ved tunge filer kan du se fremdriften i omregning av formler i boken.

Ikke så mye for en linje som tar opp nesten hele skjermens bredde og henger på den hele tiden. La oss prøve å utvide denne beskjedne listen og legge til noen flere nyttige funksjoner til den 🙂

Generelle prinsipper for administrasjon av statuslinjen

Det er veldig enkelt å administrere statuslinjen med Visual Basic. For å vise teksten din i den, kan du bruke en enkel makro:

Sub MyStatus() Application.StatusBar = "Привет!" End Sub  

Etter å ha kjørt den får vi:

Nyttig informasjon i statuslinjen

For å gjenopprette den opprinnelige tilstanden til statuslinjen, trenger du den samme korte "anti-makroen":

Sub MyStatus_Off() Application.StatusBar = False End Sub  

I den grunnleggende versjonen, som du kan se, er alt veldig enkelt. La oss nå prøve å utvikle ideen...

Adressen til det valgte området i statuslinjen

 I øvre venstre hjørne av Excel-vinduet i formellinjen kan du alltid se adressen til gjeldende celle. Men hvis et helt område er valgt, vil vi dessverre ikke se utvalgsadressen der - den samme ene aktive cellen vises:

Nyttig informasjon i statuslinjen

For å løse dette problemet kan du bruke en enkel makro som viser adressen til det valgte området i statuslinjen. Dessuten bør denne makroen startes automatisk, med enhver endring i utvalget på et hvilket som helst ark - for dette vil vi plassere den i hendelsesbehandleren Valg Endre boken vår.

Åpne Visual Basic Editor ved å bruke knappen med samme navn på fanen utvikler (Utvikler) eller hurtigtaster Venstre Alt+F11. Finn boken din i øvre venstre hjørne av prosjektpanelet og åpne modulen i den ved å dobbeltklikke Denne boken (Denne arbeidsboken):

I vinduet som åpnes, kopier og lim inn følgende makrokode:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Выделено: " & Selection.Address(0, 0) End Sub  

Nå, når et område er valgt (inkludert mer enn ett!), vil adressen vises i statuslinjen:

Nyttig informasjon i statuslinjen

For å forhindre at adressene til flere områder valgt med Ctrl slås sammen, kan du legge til en liten forbedring – bruk Erstatt-funksjonen for å erstatte et komma med et komma med et mellomrom:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Выделено: " & Replace(Selection.Address(0, 0), ",", ", ") End Sub  

Antall valgte celler i statuslinjen

Når et område er valgt, vises antallet ikke-tomme valgte celler på høyre side av statuslinjen som standard. Noen ganger må du vite antall tildelte. Denne oppgaven kan også utføres med en enkel makro for å håndtere SelectionChange-bokhendelsen, som i forrige eksempel. Du trenger en makro som:

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Dim CellCount As Variant, rng As Range For Hver rng In Selection.Areas 'Iterere gjennom alle valg RowsCount = rng.Rows.Count 'antall rader ColumnsCount = rng.Columns . Count 'antall kolonner CellCount = CellCount + RowsCount * ColumnsCount 'akkumuler det totale antallet celler Neste 'visning i statuslinjen Application.StatusBar = "Valgt: " & CellCount & " celler" End Sub  

Denne makroen går gjennom alle Ctrl-valgte områder (hvis det er flere enn ett), lagrer antall rader og kolonner i hvert område i variablene RowsCount og ColumnsCount, og akkumulerer antall celler i CellCount-variabelen, som deretter vises i statuslinjen. På jobb vil det se slik ut:

Nyttig informasjon i statuslinjen

Selvfølgelig kan du kombinere denne og de forrige makroene for å vise både adressen til det valgte området og antall celler samtidig. Du trenger bare å endre en nest siste linje til:

Application.StatusBar = "Valgt: " & Erstatt(Selection.Address(0, 0), ",", ", ") & " - totalt " & CellCount & " celler"  

Da blir bildet ganske flott:

Nyttig informasjon i statuslinjen

Vel, jeg tror du skjønner ideen. Foreslå i kommentarene - hva annet ville være nyttig å vise i statuslinjen?

  • Hva er makroer, hvordan de fungerer, hvordan du bruker og lager dem
  • Praktisk koordinatvalg på et Excel-ark
  • Hvordan gjøre komplekse formler mer visuelle

Legg igjen en kommentar