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

Hur infogar jag sidbrytningar när värdet ändras i Excel?

Antag att jag har ett antal celler, och nu vill jag infoga sidbrytningar i kalkylbladet när värden i kolumn A ändras som den vänstra skärmdumpen visas. Naturligtvis kan du infoga dem en efter en, men finns det några snabba sätt att infoga sidbrytningarna på en gång baserat på de ändrade värdena i en kolumn?

Infoga sidbrytningar när värdet ändras med VBA-kod

Infoga sidbrytningar när värdet ändras med en kraftfull funktion


Infoga sidbrytningar när värdet ändras med VBA-kod

Följande VBA-kod kan hjälpa dig att infoga sidbrytningar nedan baserat på en gång kolumndataändringar, gör så här:

1. Håll ner ALT + F11 nycklar för att öppna Microsoft Visual Basic för applikationer fönster.

2. Klicka Insert > Modulernaoch klistra in följande kod i Modulerna Fönster.

VBA-kod: Infoga sidbrytningar när värdet ändras:

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. Tryck sedan på F5 nyckel för att köra den här koden har alla sidbrytningar infogats i arket när data ändras i kolumn A. Se skärmdump:

Notera:I ovanstående kod, A är kolumnrubriken som du vill infoga sidbrytning baserat på, kan du ändra det efter dina behov.

Infoga sidbrytningar när värdet ändras med en kraftfull funktion

Om du har Kutools för Excel, med dess Skillnad mellan skillnader funktionen kan du snabbt infoga sidbrytningar, tomma rader, nedre kantlinjer eller bakgrundsfärg baserat på värdeförändringarna. Klicka för att ladda ner Kutools för Excel!

Tips:Att tillämpa detta Skillnad mellan skillnader funktionen, först bör du ladda ner Kutools för Excel, och använd sedan funktionen snabbt och enkelt.

När du har installerat Kutools för Excel, gör så här:

1. Klicka Kutools > bildad > Skillnad mellan skillnader, se skärmdump:

2. I poppade ut Skillnad på nyckelkolumn dialogrutan, gör följande:

  • Välj dataintervall och nyckelkolumn som du vill använda;
  • Välja Sidbrytning från Tillbehör låda.

3. Klicka sedan Ok knappen har sidbrytningarna infogats i intervallet baserat på värdeförändringarna se skärmdump:

Ladda ner och prova gratis Kutools för Excel nu!


Fler relativa artiklar:

  • Markera rader när cellvärde ändras i Excel
  • Om det finns en lista med upprepade värden i ditt kalkylblad och du måste markera raderna baserat på kolumn A vilket cellvärde som ändras enligt följande skärmdump. I själva verket kan du snabbt och enkelt avsluta det här jobbet med funktionen Villkorlig formatering.
  • Öka siffrorna när värdet ändras i en annan kolumn
  • Om du antar att du har en lista över värden i kolumn A, och nu vill du öka antalet med 1 i kolumn B när värdet i kolumn A ändras, vilket innebär att siffrorna i kolumn B ökar tills värdet i kolumn A ändras, sedan antal steg börjar från 1 igen som vänster skärmdump visas. I Excel kan du lösa detta jobb med följande metod.
  • Summa celler när värde ändras i en annan kolumn
  • När du arbetar på Excel-kalkylblad någon gång kan du behöva summera celler baserat på en grupp data i en annan kolumn. Till exempel här vill jag summera ordern i kolumn B när data ändras i kolumn A för att få följande resultat. Hur kunde du lösa detta problem i Excel?
  • Infoga tomma rader när värdet ändras i Excel
  • Om du antar att du har en rad data och nu vill du infoga tomma rader mellan data när värdet ändras, så att du kan separera samma sekventiella värden i en kolumn som följande skärmdumpar visas. I den här artikeln kommer jag att prata om några knep för att lösa detta problem.
  • Kör makro när cellvärde ändras i Excel
  • Normalt kan vi i Excel trycka på F5-tangenten eller Kör-knappen för att köra VBA-koden. Men har du någonsin försökt köra den specifika makrokoden när ett cellvärde ändras? Den här artikeln kommer jag att presentera några snabba knep för att hantera detta jobb i Excel.

De bästa Office-produktivitetsverktygen

Kutools för Excel löser de flesta av dina problem och ökar din produktivitet med 80%

  • återanvändning: Sätt snabbt i komplexa formler, diagram och allt som du har använt tidigare; Kryptera celler med lösenord; Skapa e-postlista och skicka e-post ...
  • Super Formula Bar (enkelt redigera flera rader med text och formel); Läslayout (enkelt läsa och redigera ett stort antal celler); Klistra in i filtrerat intervall...
  • Sammanfoga celler / rader / kolumner utan att förlora data; Delat cellinnehåll; Kombinera duplicerade rader / kolumner... Förhindra duplicerade celler; Jämför intervall...
  • Välj Duplicera eller Unikt Rader; Välj tomma rader (alla celler är tomma); Super Find och Fuzzy Find i många arbetsböcker; Slumpmässigt val ...
  • Exakt kopia Flera celler utan att ändra formelreferens; Skapa referenser automatiskt till flera ark; Sätt in kulor, Kryssrutor och mer ...
  • Extrahera text, Lägg till text, ta bort efter position, Ta bort mellanslag; Skapa och skriva ut personsökningstalsatser; Konvertera mellan celler innehåll och kommentarer...
  • Superfilter (spara och tillämpa filterscheman på andra ark); Avancerad sortering efter månad / vecka / dag, frekvens och mer; Specialfilter av fet, kursiv ...
  • Kombinera arbetsböcker och arbetsblad; Sammanfoga tabeller baserat på nyckelkolumner; Dela data i flera ark; Batchkonvertera xls, xlsx och PDF...
  • Mer än 300 kraftfulla funktioner. Stöder Office / Excel 2007-2019 och 365. Stöder alla språk. Enkel distribution i ditt företag eller organisation. Fullständiga funktioner 30-dagars gratis provperiod. 60-dagars pengarna tillbaka-garanti.
kte-flik 201905

Fliken Office ger ett flikgränssnitt till Office och gör ditt arbete mycket enklare

  • Aktivera flikredigering och läsning i Word, Excel, PowerPoint, Publisher, Access, Visio och Project.
  • Öppna och skapa flera dokument i nya flikar i samma fönster, snarare än i nya fönster.
  • Ökar din produktivitet med 50% och minskar hundratals musklick åt dig varje dag!
officetab botten
Sortera kommentarer efter
Kommentarer (8)
Inga betyg än. Bli först med att betygsätta!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej tack! Tanken på VBA får mig att svettas. Jag har dock ett problem med resultatet av den här koden. Den första kolumnen är en kolumnrubrik. Koden behandlar detta som en förändring. Min första sida visar bara kolumnrubriken, men de följande sidorna är bra. FYI: Detta är för en månadsrapport och antalet rader för varje kriterium ändras varje månad. Några idéer? Tack på förhand.
Denna kommentar minimerades av moderatoren på webbplatsen
Förlåt. EDIT: Den första RADEN är en kolumnrubrik.
Denna kommentar minimerades av moderatoren på webbplatsen
Det är verkligen lysande! Jag följde med på ditt VB-exempel och det fungerade! Jag är också ägare till KUTools så jag kommer att leka med det också.

Mycket imponerad och tack!

Mikrofon
Denna kommentar minimerades av moderatoren på webbplatsen
Är det möjligt att hoppa över de första 20 raderna på arket? Om jag har provat alla möjliga saker men min kunskap om VBA är för begränsad till att justera koden själv.
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Wilco,
För att infoga sidbrytningen men hoppa över de första 20 raderna behöver du bara ändra en parameter enligt nedanstående kod:

Sub insertpagebreaks()

'uppdatering av Extendoffice

Dim I As Long, J As Long

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

För I = J Till 21 Steg -1

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

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

End If

Nästa jag

End Sub

Försök, tack!
Denna kommentar minimerades av moderatoren på webbplatsen
Tôi không muốn ngắt trang tại những hàng bị ẩn. Vad är det?
Denna kommentar minimerades av moderatoren på webbplatsen
Hej Lê Tuấn
För att lösa ditt problem, använd nedanstående VBA-kod:
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


Försök gärna, hoppas det kan hjälpa dig!
Denna kommentar minimerades av moderatoren på webbplatsen
Hej!

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 ?

Tack så mycket!
Det finns inga kommentarer här ännu
Lämna dina kommentarer
Postar som gäst
×
Betygsätt detta inlägg:
0   Tecken
Föreslagna platser