Статус тилкесинде пайдалуу маалымат

Кимдир бирөө жагат, бирок мага 2-3 учурда гана статус тилкеси керек:

  • чыпкалоодон кийин, ал тандоодон кийин калган маанилердин санын көрсөтөт
  • диапазон тандалганда, ал тандалган уячалардын суммасын, орточосун жана санын көрсөтөт
  • оор файлдарда, китептен формулаларды кайра эсептөөдөгү прогрессти көрө аласыз.

Экрандын дээрлик бүт туурасын ээлеп, ага ар дайым илинип турган сызык үчүн анча деле көп эмес. Келгиле, бул жөнөкөй тизмени кеңейтүүгө жана ага дагы бир нече пайдалуу функцияларды кошууга аракет кылалы 🙂

Статус тилкесин башкаруунун жалпы принциптери

Visual Basic менен абал тилкесин башкаруу абдан оңой. Андагы текстти көрсөтүү үчүн, сиз жөнөкөй макросту колдоно аласыз:

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

Аны иштеткенден кийин, биз алабыз:

Статус тилкесинде пайдалуу маалымат

Статус тилкесинин баштапкы абалын калыбына келтирүү үчүн сизге ошол эле кыска "антимакро" керек болот:

Sub MyStatus_Off() Application.StatusBar = False End Sub  

Негизги версияда, сиз көрүп тургандай, баары абдан жөнөкөй. Эми идеяны иштеп чыгууга аракет кылалы…

Статус тилкесинде тандалган диапазондун дареги

 Формула тилкесиндеги Excel терезесинин жогорку сол бурчунда сиз ар дайым учурдагы уячанын дарегин көрө аласыз. Бирок, эгерде бүтүндөй диапазон тандалган болсо, анда, тилекке каршы, биз ал жерде тандоо дарегин көрбөйбүз – ошол эле бир активдүү уяча көрсөтүлөт:

Статус тилкесинде пайдалуу маалымат

Бул көйгөйдү чечүү үчүн, сиз абал тилкесинде тандалган аймактын дарегин көрсөтө турган жөнөкөй макросту колдоно аласыз. Мындан тышкары, бул макрос автоматтык түрдө ишке киргизилиши керек, каалаган барактагы тандоо өзгөрүшү керек - бул үчүн биз аны окуяны иштеткичке жайгаштырабыз. SelectionChange биздин китеп.

Өтмөктөгү бирдей аталыштагы баскычты колдонуп, Visual Basic редакторун ачыңыз иштеп (Иштеп чыгуучу) же баскычтоптун жарлыктары Сол Alt+F11. Долбоор панелинин жогорку сол бурчунда китебиңизди табыңыз жана андагы модулду эки жолу чыкылдатуу менен ачыңыз Бул китеп (Бул Жумушчу китеп):

Ачылган терезеде төмөнкү макрокодду көчүрүп, чаптаңыз:

Private Sub Workbook_SheetSelectionChange(ByVal Sh Объект катары, ByVal Максаты диапазон катары) Application.StatusBar = "Выделено: " & Selection.Address(0, 0) End Sub  

Эми, каалаган диапазон тандалганда (анын ичинде бирден ашык!), анын дареги абал тилкесинде көрсөтүлөт:

Статус тилкесинде пайдалуу маалымат

Ctrl менен тандалган бир нече диапазондордун даректеринин биригишине жол бербөө үчүн, сиз бир аз жакшыртууну кошо аласыз - үтүр менен үтүрдү боштук менен алмаштыруу үчүн Алмаштыруу функциясын колдонуңуз:

Private Sub Workbook_SheetSelectionChange(ByVal Sh Объект катары, ByVal Максаты диапазон катары) Application.StatusBar = "Выделено: " & Replace(Selection.Address(0, 0), ",", ", ") End Sub  

Статус тилкесиндеги тандалган уячалардын саны

Кандайдыр бир диапазон тандалганда, бош эмес тандалган уячалардын саны демейки боюнча абал тилкесинин оң жагында көрсөтүлөт. Кээде бөлүнгөн санын билүү керек. Бул тапшырманы мурунку мисалдагыдай SelectionChange китеп окуясын башкаруу үчүн жөнөкөй макро менен да аткарса болот. Сизге макрос керек болот:

Private Sub Workbook_SheetSelectionChange(ByVal Sh Объект катары, ByVal максаттуу диапазон катары) Dim CellCount Variant катары, Rng Ар бир Rng үчүн диапазон катары Selection.Areas 'Бардык тандоолор аркылуу кайталоо RowsCount = rng.Rows.Count 'сатарлардын саны ColumnsCountlum =r . 'мамычалардын саны CellCount = CellCount + RowsCount * ColumnsCount 'уячалардын жалпы санын топтоо Кийинки 'абал тилкесинде көрсөтүү Application.StatusBar = "Тандалган: " & CellCount & " ячейкалар" End Sub  

Бул макро Ctrl тандалган бардык аймактарды (эгерде бирден көп болсо), RowsCount жана ColumnsCount өзгөрмөлөрүндө ар бир аймактагы саптардын жана мамычалардын санын сактайт жана CellCount өзгөрмөсүндөгү уячалардын санын топтойт, андан кийин алар көрсөтүлөт. абал тилкесинде. Жумушта ал төмөнкүдөй болот:

Статус тилкесинде пайдалуу маалымат

Албетте, сиз бир эле учурда тандалган диапазондун дарегин жана уячалардын санын көрсөтүү үчүн ушул жана мурунку макросторду бириктире аласыз. Сиз бир гана акыркы сапты өзгөртүү керек:

Application.StatusBar = "Тандалган: " & Алмаштыруу(Selection.Address(0, 0), ",", ", ") & " - жалпы " & CellCount & " ячейкалар"  

Ошондо сүрөт абдан сонун болот:

Статус тилкесинде пайдалуу маалымат

Менимче, сиз идеяны түшүндүңүз деп ойлойм. Комментарийлерде сунуш кылыңыз - статус тилкесинде дагы эмнени көрсөтүү пайдалуу болот?

  • Макрос деген эмне, алар кантип иштешет, аларды кантип колдонуу жана түзүү керек
  • Excel барагында ыңгайлуу координатты тандоо
  • Кантип татаал формулаларды визуалдык кылуу керек

Таштап Жооп