Прескочи на основното съдържание

Как автоматично да скриете колони въз основа на дата в Excel?

Автор: Xiaoyang Последна промяна: 2020-07-03

Да предположим, че имам набор от данни в работен лист, сега искам автоматично да скрия колоните въз основа на конкретна дата. Например, когато въведа датата 5 г. в клетка, искам веднага да скрия колоните, чиято дата е по-малка от тази конкретна дата, както е показано на следващата екранна снимка. Тази статия ще представи някои трикове за разрешаването му.

документ скриване на колони по дата 1

Автоматично скриване на колони въз основа на конкретна дата с VBA код

Скрийте колони въз основа на конкретна дата с Kutools за Excel


стрелка син десен балон Автоматично скриване на колони въз основа на конкретна дата с VBA код

За да изпълните тази задача, следният VBA код може да ви помогне, моля, направете следното:

1. Изберете раздела на листа, който искате да скриете по дата, и щракнете с десния бутон, за да изберете Преглед на кода от контекстното меню, за да отидете на Microsoft Visual Basic за приложения прозорец и след това копирайте и поставете следния код в модула:

VBA код: Автоматично скриване на колони въз основа на конкретна дата:

Private Sub Worksheet_Change(ByVal Target As Range)
'Updateby Extendoffice
    Dim xCell As Range
    If Target.Address <> Range("K4").Address Then Exit Sub
    Application.ScreenUpdating = False
    For Each xCell In Range("A1:I1")
        xCell.EntireColumn.Hidden = (xCell.Value < Target.Value)
    Next
    Application.ScreenUpdating = True
End Sub

документ скриване на колони по дата 2

2. След това запазете и затворете този код, върнете се към работния лист и сега, когато въведете датата в клетката K4, колоните, чиято дата е по-малка от тази конкретна дата, ще бъдат скрити автоматично.

Забележка: В горния код, K4 е конкретната клетка с дата, въз основа на която искате да скриете колоните, A1:I1 клетките на реда съдържат датата, която сте използвали.


стрелка син десен балон Скрийте колони въз основа на конкретна дата с Kutools за Excel

Ако не сте запознати с кода, ето един удобен инструмент -Kutools за Excel, Със своята Изберете конкретни клетки помощна програма, можете да завършите тази работа с лекота.

Kutools за Excel : с повече от 300 удобни добавки за Excel, безплатни за изпробване без ограничение за 30 дни. 

След инсталиране Kutools за Excel, моля, направете следното:

1. Изберете заглавките на датите и щракнете Kutools > Изберете > Изберете конкретни клетки, вижте екранна снимка:

2. В изскочилото Изберете конкретни клетки изберете диалоговия прозорец Цялата колона от Тип селекцияи след това изберете критериите, като напр По-малко от от Специфичен тип падащ списък и въведете датата в следващото текстово поле, въз основа на което искате да скриете колони, вижте екранна снимка:

документ скриване на колони по дата 4

3, И после щракнете върху Ok бутон, конкретните колони, чиято дата е по-малка от 5 г., се избират наведнъж, вижте екранна снимка:

документ скриване на колони по дата 5

4. След това щракнете с десния бутон върху която и да е избрана заглавка на колона и изберете Крия за да скриете тези избрани колони, както ви е необходимо. Вижте екранна снимка:

документ скриване на колони по дата 6

Щракнете върху Безплатно изтегляне на Kutools за Excel сега!

Най-добрите инструменти за продуктивност в офиса

🤖 Kutools AI помощник: Революционизирайте анализа на данни въз основа на: Интелигентно изпълнение   |  Генериране на код  |  Създаване на персонализирани формули  |  Анализирайте данни и генерирайте диаграми  |  Извикване на функциите на Kutools...
Популярни функции: Намерете, маркирайте или идентифицирайте дубликати   |  Изтриване на празни редове   |  Комбинирайте колони или клетки без загуба на данни   |   Кръг без формула ...
Супер търсене: VLookup с множество критерии    VLookup с множество стойности  |   VLookup в няколко листа   |   Размито търсене ....
Разширен падащ списък: Бързо създаване на падащ списък   |  Зависим падащ списък   |  Падащ списък с множество избори ....
Мениджър на колони: Добавете конкретен брой колони  |  Преместване на колони  |  Превключване на състоянието на видимост на скритите колони  |  Сравнете диапазони и колони ...
Препоръчани функции: Мрежов фокус   |  Изглед на дизайна   |   Голям формула бар    Мениджър на работни книги и листове   |  Библиотека с ресурси (Автоматичен текст)   |  Избор на дата   |  Комбинирайте работни листове   |  Шифроване/декриптиране на клетки    Изпращайте имейли по списък   |  Супер филтър   |   Специален филтър (филтър получер/курсив/зачертано...) ...
Топ 15 комплекта инструменти12 Текст Инструменти (добавяне на текст, Премахване на символи, ...)   |   50 + Графика Видове (диаграма на Гант, ...)   |   40+ Практичен формули (Изчислете възрастта въз основа на рождения ден, ...)   |   19 вмъкване Инструменти (Въведете QR код, Вмъкване на картина от пътя, ...)   |   12 Конверсия Инструменти (Числа към думи, Валутен обмен, ...)   |   7 Обединяване и разделяне Инструменти (Разширено комбиниране на редове, Разделени клетки, ...)   |   ... и още

Усъвършенствайте уменията си за Excel с Kutools за Excel и изпитайте ефективност, както никога досега. Kutools за Excel предлага над 300 разширени функции за повишаване на производителността и спестяване на време.  Щракнете тук, за да получите функцията, от която се нуждаете най-много...

Описание


Раздел Office Внася интерфейс с раздели в Office и прави работата ви много по-лесна

  • Разрешете редактиране и четене с раздели в Word, Excel, PowerPoint, Publisher, Access, Visio и Project.
  • Отваряйте и създавайте множество документи в нови раздели на един и същ прозорец, а не в нови прозорци.
  • Увеличава вашата производителност с 50% и намалява стотици кликвания на мишката за вас всеки ден!
Comments (2)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
I have the same issue as Chris. The cell with my date does not always change. I need the macro to run regardless of whether the date has changed from last month or is the same as last month without having to click on the cell itself and hit enter to trigger the "Change"
This comment was minimized by the moderator on the site
Hello,
Thanks for the code.
In my case the cell K4 is a calculation cell from the formula =EOMONTH(A1,0). Example: A1 = 01.03.2017. K4 takes the value 31.03.2017. But the VBA code that you propose does not hide the columns until I click on K4 cell and press Enter to refresh it. I tried to add Range("K4").calculate but with no effect. Help please.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations