Przejdź do głównej zawartości

Jak wstawiać podziały stron, gdy zmienia się wartość w programie Excel?

Przypuśćmy, że mam zakres komórek, a teraz chcę wstawić podziały stron do arkusza roboczego, gdy wartości w kolumnie A zmieniają się tak, jak pokazano na lewym zrzucie ekranu. Oczywiście możesz wstawiać je pojedynczo, ale czy są jakieś szybkie sposoby na natychmiastowe wstawianie podziałów stron na podstawie zmienionych wartości jednej kolumny?

Wstaw podziały stron, gdy wartość zmienia się wraz z kodem VBA

Wstawianie podziałów stron, gdy zmienia się wartość, dzięki zaawansowanej funkcji


Wstaw podziały stron, gdy wartość zmienia się wraz z kodem VBA

Poniższy kod VBA może pomóc w wstawianiu podziałów stron poniżej na podstawie zmiany danych w kolumnie, wykonaj następujące czynności:

1. Przytrzymaj przycisk ALT + F11 klawisze, aby otworzyć Microsoft Visual Basic for Applications okno.

2. Kliknij wstawka > Modułi wklej następujący kod w Moduł Okno.

Kod VBA: wstaw podziały strony, gdy zmienia się wartość:

Sub insertpagebreaks()
'updateby Extendoffice
    Dim I As Long, J As Long
    J = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
    For I = J To 2 Step -1
        If Range("A" & I).Value <> Range("A" & I - 1).Value Then
            ActiveSheet.HPageBreaks.Add Before:=Range("A" & I)
        End If
    Next I
End Sub

3. Następnie naciśnij F5 klucz do uruchomienia tego kodu, wszystkie podziały stron zostały wstawione do arkusza, gdy dane ulegną zmianie w kolumnie A. Zobacz zrzut ekranu:

Uwaga:W powyższym kodzie A to nagłówek kolumny, na podstawie którego chcesz wstawić podział strony, możesz go zmienić według potrzeb.

Wstawianie podziałów stron, gdy zmienia się wartość, dzięki zaawansowanej funkcji

Jeśli Kutools dla programu Excel, Z siedzibą w Rozróżnij różnice możesz szybko wstawiać podziały stron, puste wiersze, linie dolnego obramowania lub kolor tła w oparciu o zmiany wartości. Kliknij, aby pobrać Kutools dla programu Excel!

Porady:Aby to zastosować Rozróżnij różnice Po pierwsze, należy pobrać plik Kutools dla programu Excel, a następnie szybko i łatwo zastosuj tę funkcję.

Po zainstalowaniu Kutools dla programu Excel, zrób tak:

1. Kliknij Kutools > utworzony > Rozróżnij różnicezobacz zrzut ekranu:

2. W wyskoczył Rozróżnij różnice według kluczowych kolumn w oknie dialogowym wykonaj następujące operacje:

  • Wybierz zakres danych i kolumnę klucza, której chcesz użyć;
  • Dodaj Podział strony z Opcje pudełko.

3. Następnie kliknij Ok przycisk, podziały stron zostały wstawione do zakresu na podstawie zmian wartości patrz zrzut ekranu:

Pobierz i bezpłatną wersję próbną Kutools dla programu Excel teraz!


Więcej artykułów względnych:

  • Podświetlaj wiersze, gdy wartość komórki zmienia się w programie Excel
  • Jeśli w arkuszu znajduje się lista powtarzających się wartości i musisz podświetlić wiersze na podstawie kolumny A, której wartość komórki zmienia się, jak pokazano na poniższym zrzucie ekranu. W rzeczywistości możesz szybko i łatwo zakończyć to zadanie, korzystając z funkcji formatowania warunkowego.
  • Zwiększaj liczby, gdy wartość zmieni się w innej kolumnie
  • Przypuśćmy, że masz listę wartości w kolumnie A, a teraz chcesz zwiększyć liczbę o 1 w kolumnie B, gdy wartość w kolumnie A ulegnie zmianie, co oznacza, że ​​liczby w kolumnie B będą rosły, aż zmieni się wartość w kolumnie A, a następnie przyrost liczby zaczyna się ponownie od 1, jak pokazano na lewym zrzucie ekranu. W programie Excel możesz rozwiązać to zadanie za pomocą następującej metody.
  • Sumuj komórki, gdy wartość zmieni się w innej kolumnie
  • Podczas pracy z arkuszem programu Excel czasami może być konieczne zsumowanie komórek na podstawie grupy danych w innej kolumnie. Na przykład tutaj chcę zsumować zamówienia w kolumnie B, gdy dane zmieniają się w kolumnie A, aby uzyskać następujący wynik. Jak możesz rozwiązać ten problem w programie Excel?
  • Wstaw puste wiersze po zmianie wartości w programie Excel
  • Przypuśćmy, że masz zakres danych, a teraz chcesz wstawić puste wiersze między danymi po zmianie wartości, abyś mógł oddzielić sekwencyjne te same wartości w jednej kolumnie, jak pokazano na poniższych zrzutach ekranu. W tym artykule omówię kilka sztuczek, które pomogą Ci rozwiązać ten problem.
  • Uruchom makro, gdy wartość komórki zmieni się w programie Excel
  • Zwykle w programie Excel możemy nacisnąć klawisz F5 lub przycisk Uruchom, aby wykonać kod VBA. Ale czy kiedykolwiek próbowałeś uruchomić określony kod makra, gdy zmienia się wartość komórki? W tym artykule przedstawię kilka szybkich sztuczek, aby poradzić sobie z tą pracą w programie Excel.

Najlepsze narzędzia biurowe

🤖 Pomocnik AI Kutools: Zrewolucjonizuj analizę danych w oparciu o: Inteligentne wykonanie   |  Wygeneruj kod  |  Twórz niestandardowe formuły  |  Analizuj dane i generuj wykresy  |  Wywołaj funkcje Kutools...
Popularne funkcje: Znajdź, wyróżnij lub zidentyfikuj duplikaty   |  Usuń puste wiersze   |  Łącz kolumny lub komórki bez utraty danych   |   Okrągły bez wzoru ...
Super wyszukiwanie: Wiele kryteriów VLookup    Wiele wartości VLookup  |   Przeglądanie pionowe na wielu arkuszach   |   Wyszukiwanie rozmyte ....
Zaawansowana lista rozwijana: Szybko twórz listę rozwijaną   |  Zależna lista rozwijana   |  Lista rozwijana wielokrotnego wyboru ....
Menedżer kolumn: Dodaj określoną liczbę kolumn  |  Przesuń kolumny  |  Przełącz stan widoczności ukrytych kolumn  |  Porównaj zakresy i kolumny ...
Polecane funkcje: Fokus siatki   |  Widok projektu   |   Duży pasek formuły    Menedżer skoroszytów i arkuszy   |  Biblioteka zasobów (Automatyczny tekst)   |  Selektor dat   |  Połącz arkusze   |  Szyfruj/odszyfruj komórki    Wysyłaj e-maile według listy   |  Super filtr   |   Specjalny filtr (filtruj pogrubienie/kursywa/przekreślenie...) ...
15 najlepszych zestawów narzędzi12 Tekst Tools (Dodaj tekst, Usuń znaki, ...)   |   50 + Wykres rodzaje (Wykres Gantta, ...)   |   40+ Praktyczne Wzory (Oblicz wiek na podstawie urodzin, ...)   |   19 Wprowadzenie Tools (Wstaw kod QR, Wstaw obraz ze ścieżki, ...)   |   12 Konwersja Tools (Liczby na słowa, Przeliczanie walut, ...)   |   7 Połącz i podziel Tools (Zaawansowane wiersze łączenia, Podział komórki, ...)   |   ... i więcej

Zwiększ swoje umiejętności Excela dzięki Kutools for Excel i doświadcz wydajności jak nigdy dotąd. Kutools dla programu Excel oferuje ponad 300 zaawansowanych funkcji zwiększających produktywność i oszczędzających czas.  Kliknij tutaj, aby uzyskać funkcję, której najbardziej potrzebujesz...

Opis


Karta Office wprowadza interfejs z zakładkami do pakietu Office i znacznie ułatwia pracę

  • Włącz edycję i czytanie na kartach w programach Word, Excel, PowerPoint, Publisher, Access, Visio i Project.
  • Otwieraj i twórz wiele dokumentów w nowych kartach tego samego okna, a nie w nowych oknach.
  • Zwiększa produktywność o 50% i redukuje setki kliknięć myszką każdego dnia!
Comments (8)
No ratings yet. Be the first to rate!
This comment was minimized by the moderator on the site
Bonjour,

Merci pour le code qui fonctionne très bien, seulement je souhaite ajouter un saut de page après et non avant chaque changement de valeur... que faut-il changer dans le code ?

Merci beaucoup !
This comment was minimized by the moderator on the site
Tôi không muốn ngắt trang tại những hàng bị ẩn. Thì phải làm sao?
This comment was minimized by the moderator on the site
Hello, Lê Tuấn
To solve your problem, please apply the below VBA code:
Sub insertpagebreaks()
'updateby Extendoffice
Dim I As Long, J As Long
Dim xRg As Range
On Error Resume Next
J = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row
Set xRg = Range("A1:A" & J).SpecialCells(xlCellTypeVisible)

For I = J To 2 Step -1
If Range("A" & I).Value <> Range("A" & I - 1).Value Then
If Not Intersect(xRg, Range("A" & I)) Is Nothing Then
ActiveSheet.HPageBreaks.Add Before:=Range("A" & I)
End If
End If
Next I
End Sub


Please try, hope it can help you!
This comment was minimized by the moderator on the site
Is it possible to skip the first 20 rows of the sheet? If been trying all kinds of stuff but my knowledge of VBA is to limited to adjuist the code myself.
This comment was minimized by the moderator on the site
Hi, Wilco,
To insert the page break but skip the first 20 rows, you just need to change one parameter as below code:

Sub insertpagebreaks()

'updateby Extendoffice

Dim I As Long, J As Long

J = ActiveSheet.Cells(Rows.Count, "A").End(xlUp).Row

For I = J To 21 Step -1

If Range("A" & I).Value <> Range("A" & I - 1).Value Then

ActiveSheet.HPageBreaks.Add Before:=Range("A" & I)

End If

Next I

End Sub

Please try, thank you!
This comment was minimized by the moderator on the site
That is truly brilliant! I followed along on your VB example and it worked! I also am an owner of KUTools so I will play with that too.

Very impressed and thanks!

Mike
This comment was minimized by the moderator on the site
Sorry. EDIT: The first ROW is a column header.
This comment was minimized by the moderator on the site
Hello, Thank you! The thought of VBA makes me sweat. I do have one problem with the results of this code though. The first column is a column header. The code treats this as a change. My first page only shows the column header, but he following pages are fine. FYI: This is for a monthly report and the number of rows for each criteria change monthly. Any Ideas? Thank you in advance.
There are no comments posted here yet
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations