Note: The other languages of the website are Google-translated. Back to English

Як тримати рух слайсера зведеної таблиці за допомогою прокрутки робочого аркуша в Excel?

Під час роботи зі зведеною таблицею ви можете вставляти зрізи для візуального фільтрування даних таблиці. У цій статті йдеться про те, щоб зріз зведеної таблиці завжди залишався видимим під час прокрутки робочого аркуша.

Продовжуйте рух слайсерів зведеної таблиці за допомогою прокрутки аркуша за допомогою коду VBA


Продовжуйте рух слайсерів зведеної таблиці за допомогою прокрутки аркуша за допомогою коду VBA

Наступний сценарій VBA може допомогти вам продовжувати переміщувати зріз зведеної таблиці за допомогою робочого аркуша. Будь ласка, виконайте наступне.

1 Натисніть кнопку інший + F11 клавіші одночасно, щоб відкрити Microsoft Visual Basic для додатків вікна.

2 В Microsoft Visual Basic для додатків вікно, двічі клацніть ThisWorkbook на лівій панелі проекту, а потім скопіюйте та вставте наведений нижче код VBA в Ця робоча книга (код) вікно. Дивіться знімок екрана:

Код VBA: продовжуйте рух слайсера зведеної таблиці за допомогою прокрутки робочого аркуша

Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
    Dim ShF As Shape
    Dim ShM As Shape
    'specify a slicer
    Application.ScreenUpdating = False
    Set ShF = ActiveSheet.Shapes("Column1")
    Set ShM = ActiveSheet.Shapes("Column2")
    'change position of the slicer
    With Windows(1).VisibleRange.Cells(1, 1)
        ShF.Top = .Top
        ShF.Left = .Left + 300
        ShM.Top = .Top
        ShM.Left = .Left + 100
    End With
    Application.ScreenUpdating = True
End Sub

примітки:

1). У коді стовпець1 і стовпець2 - це імена нарізачів.

2). Ви можете вказати розташування різальних машин під час прокрутки робочого аркуша в коді.

3). І ви можете додати до коду більше нарізок або видалити з нього нарізки, як вам потрібно.

3 Натисніть кнопку інший + Q клавіші, щоб закрити Microsoft Visual Basic для додатків діалогове вікно вікна.

Відтепер зазначені слайсери будуть переміщуватися з активною коміркою під час прокрутки робочого аркуша. Дивіться знімок екрана:


Статті по темі:


Найкращі інструменти для підвищення продуктивності офісу

Kutools для Excel вирішує більшість ваших проблем і збільшує продуктивність на 80%

  • Повторне використання: Швидко вставте складні формули, діаграми і все, що ви використовували раніше; Шифрувати комірки з паролем; Створити список розсилки та надсилати електронні листи ...
  • Супер формула бар (легко редагувати кілька рядків тексту та формули); Макет читання (легко читати та редагувати велику кількість комірок); Вставте у відфільтрований діапазон...
  • Об’єднати клітинки / рядки / стовпці без втрати даних; Вміст розділених комірок; Об'єднати повторювані рядки / стовпці... Запобігання дублюючим клітинам; Порівняйте діапазони...
  • Виберіть Повторюваний або Унікальний Рядки; Виберіть Пусті рядки (усі клітинки порожні); Супер знахідка та нечітка знахідка у багатьох робочих зошитах; Випадковий вибір ...
  • Точна копія Кілька клітинок без зміни посилання на формулу; Автоматичне створення посилань на кілька аркушів; Вставте кулі, Прапорці та інше ...
  • Витяг тексту, Додати текст, Видалити за позицією, Видаліть пробіл; Створення та друк проміжних підсумків підкачки; Перетворення вмісту комірок та коментарів...
  • Супер фільтр (зберегти та застосувати схеми фільтрів до інших аркушів); Розширене сортування за місяцем / тижнем / днем, частотою та іншим; Спеціальний фільтр жирним, курсивом ...
  • Поєднайте робочі зошити та робочі аркуші; Об’єднати таблиці на основі ключових стовпців; Розділіть дані на кілька аркушів; Пакетне перетворення xls, xlsx та PDF...
  • Понад 300 потужних функцій. Підтримує Office / Excel 2007-2021 і 365. Підтримує всі мови. Легке розгортання на вашому підприємстві чи в організації. 30-денна безкоштовна пробна версія повних функцій. 60-денна гарантія повернення грошей.
вкладка kte 201905

Вкладка Office забезпечує інтерфейс з вкладками для Office і значно спрощує вашу роботу

  • Увімкніть редагування та читання на вкладках у Word, Excel, PowerPoint, Publisher, Access, Visio та Project.
  • Відкривайте та створюйте кілька документів на нових вкладках того самого вікна, а не в нових вікнах.
  • Збільшує вашу продуктивність на 50% та зменшує сотні клацань миші для вас щодня!
дно офісної таблиці
Коментарі (10)
Поки немає оцінок. Оцініть першим!
Цей коментар був мінімізований модератором на сайті
привіт,
Дякую за цей VBA.

Я абсолютно не знаю про VBA, і тому моє запитання.

Я використовував цей VBA, і у мене виникло запитання.
Як я можу змінити цей VBA, щоб він працював лише для одного аркуша.

Зараз у мене є 8 аркушів, і щоразу, коли я переходжу до іншого аркуша, він не працює і просить мене завершити або налагодити.
Я зробив саме так, як показано вище.


Це мій VBA тут..
Private Sub Workbook_SheetSelectionChange(ByVal Sh як об'єкт, ByVal Target як діапазон)
Дім ШФ Як Форма
Дим ШМ Як Форма
'вкажіть слайсер
Application.ScreenUpdating = Невірний
Встановити ShF = ActiveSheet.Shapes("Клієнт 1")
Встановіть ShM = ActiveSheet.Shapes("Нагадування 1")
'змінити положення слайсера
З Windows(1).VisibleRange.Cells(1, 1)
ШФ.Верх = .Верх + 2
ШФ.Ліва = .Ліва + 475
ШМ.Верх = .Верх + 180
ШМ.Ліва = .Ліва + 475
Кінець з
Application.ScreenUpdating = True
End Sub


Будь ласка, допоможіть.
Цей коментар був мінімізований модератором на сайті
привіт,
Дякую за цей VBA.

Я абсолютно не знаю про VBA, і тому моє запитання.

Я використовував цей VBA, і у мене виникло запитання.
Як я можу змінити цей VBA, щоб він працював лише для одного аркуша.

Зараз у мене є 8 аркушів, і щоразу, коли я переходжу до іншого аркуша, він не працює і просить мене завершити або налагодити.
Я зробив саме так, як показано вище.


Це мій VBA тут..
Private Sub Workbook_SheetSelectionChange(ByVal Sh як об'єкт, ByVal Target як діапазон)
Дім ШФ Як Форма
Дим ШМ Як Форма
'вкажіть слайсер
Application.ScreenUpdating = Невірний
Встановити ShF = ActiveSheet.Shapes("Клієнт 1")
Встановіть ShM = ActiveSheet.Shapes("Нагадування 1")
'змінити положення слайсера
З Windows(1).VisibleRange.Cells(1, 1)
ШФ.Верх = .Верх + 2
ШФ.Ліва = .Ліва + 475
ШМ.Верх = .Верх + 180
ШМ.Ліва = .Ліва + 475
Кінець з
Application.ScreenUpdating = True
End Sub


Будь ласка, допоможіть.
Цей коментар був мінімізований модератором на сайті
Дорогий Джон
Перейдіть до аркуша, для якого ви хочете, щоб код VBA працював, потім клацніть правою кнопкою миші вкладку Аркуш і виберіть Перегляд коду з контекстного меню.
А потім скопіюйте та вставте нижче код VBA у вікно коду, що відкривається. Дивіться скріншот нижче:

Приватний додатковий аркуш_SelectionChange(ByVal Target As Range)
Дім ШФ Як Форма
Дим ШМ Як Форма
'вкажіть слайсер
Application.ScreenUpdating = Невірний
Встановити ShF = ActiveSheet.Shapes("Fruit")
Встановіть ShM = ActiveSheet.Shapes("Sale")
'змінити положення слайсера
З Windows(1).VisibleRange.Cells(1, 1)
ШФ.Верх = .Верх
ШФ.Ліва = .Ліва + 300
ШМ.Верх = .Верх
ШМ.Ліва = .Ліва + 100
Кінець з
Application.ScreenUpdating = True
End Sub
Цей коментар був мінімізований модератором на сайті
Шановна Кристал,

Дуже дякую за код.
Я зробив саме так, як ви сказали, і це працює як шарм.

Дійсно ціную це.
Привітання:
Цей коментар був мінімізований модератором на сайті
Привіт, я оновив свій код, як ви вказали. Слайсер більше не прокручується разом із вікном, однак якщо я клацну в новій клітинці, слайсер переміститься. Це правильна поведінка?
Цей коментар був мінімізований модератором на сайті
Що означає перший рядок і як ми налаштуємо його відповідно до нашого слайсера?
Я дуже спантеличений цим фактично в кожному рядку.
Цей коментар був мінімізований модератором на сайті
Шановна Кеті
Я не знаю, чи я повністю розумію ваше запитання.
Як я вже згадував у примітках вище, вам потрібно замінити Column1 і Column2 іменами ваших слайсерів у коді, щоб ваш слайсер прокручував робочий аркуш.
Цей коментар був мінімізований модератором на сайті
У мене є 4 слайсера, які були згруповані разом, вибравши всі 4 і клацнувши правою кнопкою миші, щоб використати команду group.

Чи можна призначити цей VBA групою? Як позначити групу та написати VBA, щоб розпізнати її як єдину?
Цей коментар був мінімізований модератором на сайті
Привіт Майкл,
На жаль, не можу допомогти з цим. Дякую за коментар.
Цей коментар був мінімізований модератором на сайті
Гаразд, у заголовку сказано: «Як забезпечити переміщення фрагмента зведеної таблиці за допомогою робочого аркуша Прокрутка У Excel?", але цей код VBA робить це лише для поточної вибраної клітинки, як ми можемо це зробити для прокрутки книги, а не лише виділеної клітинки?
There are no comments posted here yet
Залишайте свої коментарі
Публікація як гість
×
Оцініть цю публікацію:
0   Персонажі
Рекомендовані місця

Слідуй за нами

Copyright © 2009 - WWW.extendoffice.com. | Всі права захищені. На основі ExtendOffice. | Карта сайту
Microsoft та логотип Office є товарними знаками або зареєстрованими товарними знаками Microsoft Corporation у США та / або інших країнах.
Захищений Sectigo SSL