Inhalter
Een gär, awer ech perséinlech brauch eng Statusbar nëmmen an 2-3 Fäll:
- nom Filteren weist et d'Zuel vun de Wäerter déi no der Auswiel bleiwen
- wann e Beräich ausgewielt ass, weist et d'Zomm, Moyenne an Zuel vun ausgewielt Zellen
- am Fall vun schwéieren Fichieren, kënnt Dir de Fortschrëtt am Recalculation Formelen am Buch gesinn.
Net esou vill fir eng Linn déi bal d'ganz Breet vum Écran hëlt an déi ganzen Zäit hänkt. Loosst eis probéieren dës bescheiden Lëscht auszebauen an e puer méi nëtzlech Funktiounen derbäi 🙂
Allgemeng Prinzipien fir d'Gestioun vun der Statusbar
D'Statusbar mat Visual Basic verwalten ass ganz einfach. Fir Ären Text dran ze weisen, kënnt Dir en einfachen Makro benotzen:
Sub MyStatus() Application.StatusBar = "Привет!" Enn Sub
Nodeems mir et lafen, kréien mir:
Fir den ursprénglechen Zoustand vun der Statusbar ze restauréieren, braucht Dir déiselwecht kuerz "Anti-Makro":
Sub MyStatus_Off() Application.StatusBar = Falsch Enn Sub
An der Basis Versioun, wéi Dir gesitt kann, ass alles ganz einfach. Loosst eis elo probéieren d'Iddi z'entwéckelen ...
Adress vun der gewielter Gamme an der Statusbar
An der ieweschter lénkser Ecke vun der Excel Fënster an der Formelbar kënnt Dir ëmmer d'Adress vun der aktueller Zell gesinn. Awer wann eng ganz Palette ausgewielt gëtt, da gesi mir leider d'Selektiounsadress net do - déiselwecht eng eenzeg aktiv Zell gëtt ugewisen:
Fir dëse Problem ze léisen, kënnt Dir en einfachen Makro benotzen, deen d'Adress vum gewielte Gebitt an der Statusbar weist. Ausserdeem soll dëse Makro automatesch lancéiert ginn, mat all Ännerung vun der Auswiel op all Blat - dofir setzen mir en an den Eventhandler Auswiel änneren eist Buch.
Öffnen de Visual Basic Editor andeems Dir de Knäppchen mam selwechten Numm op der Tab benotzt Entwéckler (Entwéckler) oder Tastatur Ofkiirzungen Lénks Alt+F11. Fannt Äert Buch an der ieweschter lénkser Ecke vum Project Panel an öffnen de Modul dran andeems Dir Duebelklickt Dëst Buch (Dëst Aarbechtsbuch):
An der Fënster déi opmaacht, kopéiert a paste de folgende Makrocode:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Выделено: " & Selection.Address(0, 0) End Sub
Elo, wann all Gamme ausgewielt gëtt (och méi wéi een!), gëtt seng Adress an der Statusbar ugewisen:
Fir ze vermeiden datt d'Adresse vu verschiddene Beräicher, déi mat Ctrl ausgewielt goufen, fusionéieren, kënnt Dir eng kleng Verbesserung derbäi maachen - benotzt d'Ersatzfunktioun fir e Komma duerch e Komma mat engem Raum ze ersetzen:
Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range) Application.StatusBar = "Выделено: " & Replace(Selection.Address(0, 0), ",", ", ") End Sub
Zuel vun ausgewielten Zellen an der Statusbar
Wann e Beräich ausgewielt gëtt, gëtt d'Zuel vun net eidel ausgewielten Zellen op der rietser Säit vun der Statusbar als Standard ugewisen. Heiansdo musst Dir d'Zuel vun zougewisen wëssen. Dës Aufgab kann och mat engem einfachen Makro erfëllt ginn fir de SelectionChange Buch Event ze handhaben, wéi am virege Beispill. Dir braucht e Makro wéi:
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 'Iterate through all selections RowsCount = rng.Rows.Count 'number of rows ColumnsCount = rng.Columns . Count 'Zuel vun de Kolonnen CellCount = CellCount + RowsCount * ColumnsCount 'accumuléiert d'Gesamtzuel vun den Zellen Next 'display an der Statusbar Application.StatusBar = "Ausgewielt: " & CellCount & " Zellen" End Sub
Dëse Macro loopt duerch all Ctrl-ausgewielt Beräicher (wann et méi wéi ee sinn), späichert d'Zuel vun de Reihen a Kolonnen an all Gebitt an de RowsCount a ColumnsCount Variablen, a sammelt d'Zuel vun den Zellen an der CellCount Variabel, déi dann ugewise gëtt. an der Statusbar. Op der Aarbecht wäert et esou ausgesinn:
Natierlech kënnt Dir dëst an déi virdrun Makroen kombinéieren fir souwuel d'Adress vum gewielte Beräich an d'Zuel vun den Zellen zur selwechter Zäit ze weisen. Dir musst nëmmen eng virläitst Linn änneren op:
Application.StatusBar = "Ausgewielt: " & Ersetzen (Selection.Address(0, 0), ",", ", ") & " - total " & Zellzuel & " Zellen"
Dann ass d'Bild zimlech wonnerbar:
Gutt, ech mengen Dir kritt d'Iddi. Proposéiert an de Kommentaren - wat soss wier nëtzlech fir an der Statusbar ze weisen?
- Wat sinn Makroen, wéi se funktionnéieren, wéi se se benotzen an erstellen
- Praktesch Koordinatenauswiel op engem Excel Blat
- Wéi komplex Formelen méi visuell ze maachen