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

Hvordan indsættes tomme rækker, når værdien ændres i Excel?

Antag at du har en række data, og nu vil du indsætte tomme rækker mellem dataene, når værdien ændres, så du kan adskille de sekventielle samme værdier i en kolonne som følgende skærmbilleder vist. I denne artikel vil jeg tale om nogle tricks til dig for at løse dette problem.

Indsæt tomme rækker, når værdien ændres med subtotal-funktionen

Indsæt tomme rækker, når værdien ændres med hjælpekolonner

Indsæt tomme rækker, når værdien ændres med VBA-kode

Indsæt specifikt antal tomme rækker, når værdien ændres med en kraftfuld funktion


Indsæt tomme rækker, når værdien ændres med subtotal-funktionen

Med Subtotal funktion, kan du indsætte tomme rækker mellem dataene, når værdien ændres som følgende trin:

1. Vælg det dataområde, du vil bruge.

2. Klik data > Subtotal at åbne Subtotal dialogboksen og i Subtotal dialog, skal du gøre følgende muligheder:

1: Vælg det kolonnenavn, som du vil indsætte tomme rækker, baseret på når værdien ændres under Ved hver ændring i sektion;
2: Vælg Tælle fra Brug funktionen rulleliste
3: Kontroller det kolonnenavn, som du vil indsætte subtotalen i Føj subtotal til listefelt

3. Klik derefter på OK, er subtotelinjerne indsat mellem de forskellige produkter, og omridssymbolerne vises til venstre for tabellen, se skærmbillede:

4. Og klik derefter på tallet 2 øverst i omridssymbolet for kun kun at vise subtotallinjerne.

5. Vælg derefter data om subtotalområdet, og tryk på Alt +; genvejstaster for kun at vælge de synlige rækker, se skærmbillede:

6. Når du kun har valgt de synlige rækker, skal du trykke på Slette tasten på tastaturet, og alle subtotalrækker er blevet fjernet.

7. Klik derefter på en hvilken som helst anden celle, og gå tilbage data > Opdel gruppe > Ryd omrids for at fjerne konturerne, se skærmbillede:

8. Kontursymbolerne er ryddet med det samme, og du kan se, at der er indsat tomme rækker mellem dataene, når værdien ændres, se skærmbillede:

9. Endelig kan du slette kolonnen A efter behov.


Indsæt sideskift, tomme rækker, nederste kant eller udfyld farve, når værdien ændres hurtigt

Hvis du har Kutools til Excel's Skel mellem forskelle funktion, kan du hurtigt indsætte sideskift, tomme rækker, nederste kant eller udfyldningsfarve, når værdien ændres efter behov. Se nedenstående demo.         Klik for at downloade Kutools til Excel!


Indsæt tomme rækker, når værdien ændres med hjælpekolonner

Med hjælpekolonnerne kan du først indsætte formlen og derefter anvende Søg og erstat funktion, til sidst indsæt de tomme rækker mellem de skiftende værdier. Gør som følger:

1. Indtast denne formel i en tom celle C3 = A3 = A2og i celle D4 indtast denne formel = A4 = A3, se skærmbillede:

2. Vælg derefter C3: D4, og træk udfyldningshåndtaget over til det område, som du vil anvende disse formler, så får du Sand or False i cellerne, se skærmbillede:

3. Og tryk derefter på Ctrl + F nøgler til at åbne Søg og erstat i dialogboksen, der vises, skal du åbne FALSK ind i Find hvad tekstfelt under find fane og klik Indstillinger knap for at udvide denne dialog og vælge Værdier fra Kig ind rulleliste, se skærmbillede:

4. Klik Find alle og tryk derefter på Ctrl + A for at vælge alle resultaterne af at finde, er alle FALSE celler blevet valgt på én gang, se skærmbillede:

6. Luk Søg og erstat dialog, næste trin, kan du indsætte tomme rækker ved at klikke Forside > indsatte > Indsæt arkrækker, og tomme rækker er indsat i dataene, når værdien ændres baseret på kolonne A, se skærmbilleder:

7. Endelig kan du slette hjælpekolonnen C og D efter behov.


Indsæt tomme rækker, når værdien ændres med VBA-kode

Hvis du er træt af at bruge ovenstående metoder, er der en kode, der også kan hjælpe dig med at indsætte blanke rækker mellem de ændrede værdier på én gang.

1. Hold nede ALT + F11 nøgler til at åbne Vinduet Microsoft Visual Basic til applikationer.

2. Klik indsatte > Moduler, og indsæt følgende kode i Modul vindue.

VBA-kode: Indsæt tomme rækker, når værdien ændres

Sub InsertRowsAtValueChange()
'Update by Extendoffice
Dim Rng As Range
Dim WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Step -1
    If WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
        WorkRng.Cells(i, 1).EntireRow.Insert
    End If
Next
Application.ScreenUpdating = True
End Sub

3. Tryk derefter på F5 nøgle til at køre denne kode, og et promptfelt vises, så du kan vælge en kolonnedata, som du vil indsætte tomme rækker, når værdien ændres, som du er baseret på, se skærmbillede:

4. Og klik derefter på OKer de tomme rækker indsat mellem data, når værdien ændres baseret på kolonne A.


Indsæt specifikt antal tomme rækker, når værdien ændres med en kraftfuld funktion

Hvis du bliver prøvet med ovenstående besværlige metoder, her introducerer jeg et nyttigt værktøj, Kutools til Excel's Skel mellem forskelle kan hjælpe dig med at indsætte sideskift, tomme rækker, nederste kant eller udfyldningsfarve, når celleværdien ændres hurtigt og nemt.

tips:At anvende dette Skel mellem forskelle funktion, for det første skal du downloade Kutools til Excel, og anvend derefter funktionen hurtigt og nemt.

Efter installation Kutools til Excelskal du gøre som dette:

1. Klik Kutools > dannet > Skel mellem forskelle, se skærmbillede:

2. I Skelne forskelle ved hjælp af nøglekolonne dialogboksen, skal du udføre følgende handlinger:

  • Vælg det dataområde, du vil bruge, og vælg derefter den nøglekolonne, du vil indsætte tomme rækker baseret på;
  • Tjek derefter Tom række mulighed fra Indstillinger sektion, og indtast antallet af tomme rækker, som du vil indsætte.

3. Klik derefter på Ok knap, og det specifikke antal tomme rækker er indsat i dataene, hvis celleværdien ændres, se skærmbilleder:

Klik for at downloade Kutools til Excel og gratis prøveversion nu!


De bedste Office-produktivitetsværktøjer

Kutools til Excel løser de fleste af dine problemer og øger din produktivitet med 80%

  • Genbruge: Indsæt hurtigt komplekse formler, diagrammer og alt, hvad du har brugt før; Krypter celler med adgangskode Opret postliste og send e-mails ...
  • Super formel bar (let redigere flere linjer med tekst og formel); Læsning Layout (let at læse og redigere et stort antal celler); Indsæt til filtreret rækkevidde...
  • Flet celler / rækker / kolonner uden at miste data; Split celler indhold; Kombiner duplikerede rækker / kolonner... Forhindre duplikerede celler; Sammenlign områder...
  • Vælg Duplicate eller Unique Rækker; Vælg tomme rækker (alle celler er tomme); Super Find og Fuzzy Find i mange arbejdsbøger; Tilfældig valg ...
  • Præcis kopi Flere celler uden at ændre formelreference; Auto Opret referencer til flere ark; Indsæt kugler, Afkrydsningsfelter og mere ...
  • Uddrag tekst, Tilføj tekst, Fjern efter position, Fjern mellemrum; Opret og udskriv personsøgningssubtotaler; Konverter mellem celler indhold og kommentarer...
  • Superfilter (gem og anvend filterskemaer på andre ark); Avanceret sortering efter måned / uge / dag, hyppighed og mere; Specielt filter af fed, kursiv ...
  • Kombiner arbejdsbøger og arbejdsark; Fletabeller baseret på nøglekolonner; Opdel data i flere ark; Batch Konverter xls, xlsx og PDF...
  • Mere end 300 kraftfulde funktioner. Understøtter Office / Excel 2007-2021 og 365. Understøtter alle sprog. Nem implementering i din virksomhed eller organisation. Fuld funktioner 30-dages gratis prøveperiode. 60 dages pengene tilbage garanti.
kte-fane 201905

Fanen Office bringer en grænseflade til et kontor med Office, og gør dit arbejde meget lettere

  • Aktiver redigering og læsning af faner i Word, Excel, PowerPoint, Publisher, Access, Visio og Project.
  • Åbn og opret flere dokumenter i nye faner i det samme vindue snarere end i nye vinduer.
  • Øger din produktivitet med 50 % og reducerer hundredvis af museklik for dig hver dag!
officetab bund
Sorter kommentarer efter
Kommentarer (15)
Ingen vurderinger endnu. Vær den første til at bedømme!
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg har en kolonne med tallene 5,4,3,2 og 1 (mange af dem), og jeg vil adskille Fives fra de andre, som: 5 5 5 4 3 2 1 5 5 5 5 5 4 3 2 1 Tallene er i beskrivende rækkefølge, og der er altid en fire under en fem, så jeg prøvede: Sub InsertRowsAtValueChange() 'Update 20140716 Dim Rng As Range Dim WorkRng As Range On Error Resume Next xTitleId = "KutoolsforExcel" Set WorkRng = Application.Selection Indstil WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8) Application.ScreenUpdating = False For i = WorkRng.Rows.Count To 2 Step -1 If WorkRng.Cells(i, 1). Værdi = 5 Og WorkRng.Cells(i - 1, 1).Value = 4 Derefter WorkRng.Cells(i, 1).EntireRow.Insert End If Next Application.ScreenUpdating = True End Sub Men det virkede ikke. Kan du hjælpe mig?
Denne kommentar blev minimeret af moderatoren på webstedet
Formlen fungerer godt, men der er et par eksempler, hvor den ikke genkender
Denne kommentar blev minimeret af moderatoren på webstedet
Mange tak, kiggede overalt, og dette var den eneste løsning, der virkede for mig, som også var på almindeligt engelsk. Alle de andre Excel-tutorialwebsteder opdelte det ikke trin-for-trin, som du gjorde, mange tak. skål :)
Denne kommentar blev minimeret af moderatoren på webstedet
Mange tak for at beskrive flere løsninger på problemet. Jeg brugte Visual Basic og ændrede [quote]WorkRng.Cells(i, 1).EntireRow.Insert[/quote] med [quote]With WorkRng.Cells(i, 1).EntireRow.Borders(xlEdgeTop) .LineStyle = xlContinuous .ColorIndex = xlAutomatic .TintAndShade = 0 .Weight = xlMedium End With[/quote] Dette vil tegne linjer mellem rækker med skiftende værdier i stedet for tomme linjer.
Denne kommentar blev minimeret af moderatoren på webstedet
Hvor i koden skal jeg ændre for at inkludere mere end én række, jeg skal tilføje 10 efter hver pause... Tak
Denne kommentar blev minimeret af moderatoren på webstedet
Hej alle sammen tak!! det er fantastisk, kan I også fortælle mig, hvordan man indsætter 2 rækker, når værdien ændres i VBA eller gennem Excel.
Denne kommentar blev minimeret af moderatoren på webstedet
Hej, Disse er næsten nyttige! Den første metode virker ikke for mig, fordi når jeg følger trinnene eksplicit, sletter de data, jeg sletter i subtotalruderne, hele kolonnerne, som jeg har sorteret. I den anden metode, når jeg kommer til det trin, hvor jeg indsætter arkrækker, indsættes rækkerne OVER de FALSK celler, som opdeler dataene, men det sidste udvalg af hver gruppe tilføjes derefter til gruppen nedenfor. Nogle forslag???
Denne kommentar blev minimeret af moderatoren på webstedet
[quote]Hej alle sammen tak!! det er fantastisk, kan I også fortælle mig, hvordan man indsætter 2 rækker, når værdien ændres i VBA eller gennem Excel.Af Hudson[/quote] Fortæl mig venligst, hvordan man indsætter mere end 1 række.
Denne kommentar blev minimeret af moderatoren på webstedet
Jeg har brugt min egen løsning i nogen tid.
1. Indsæt en hjælpekolonne i kolonne A
2. I A2 skal du skrive "if(B2=B1,A1,A1+1)"
3. Kopier den formel ned til sidste række
4. Kopier alle de udfyldte celler i kolonne A, og sæt specielle (værdier) ind over dem
5. Kopier alle cellerne igen og indsæt dem i kolonne A i den første ikke-udfyldte celle (f.eks. hvis du har 104 rækker med data plus en overskriftsrække, vil du indsætte i celle A106)
6. Klik på Data og fjern dubletter (kun på de celler, du lige har indsat i trin 5; ikke på alle rækker)
7. Sorter hele kolonne A
8. Slet kolonne A

Det virker som mange skridt, men tager kun et par sekunder.
Denne kommentar blev minimeret af moderatoren på webstedet
VBA-koden virkede første gang og gjorde præcis, hvad jeg prøvede at gøre. Mange tak!
Denne kommentar blev minimeret af moderatoren på webstedet
RE: Indsæt tomme rækker, når værdien ændres med vba-kode
Er der en måde, hvorpå jeg kan gemme rækken og ikke skal vælge den, hver gang jeg kører den?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej,
Er meget nyttigt, hvis jeg har brug for at indsætte 1 række, men hvis jeg skal indsætte 145 rækker i hver gang dataene ændres i spwcific kolonne, hvordan kan jeg gøre det?
Denne kommentar blev minimeret af moderatoren på webstedet
Hej Hassan,
For at indsætte flere tomme rækker, når værdien ændres i en specifik kolonne, skal du anvende følgende VBA-kode:

Bemærk: I nedenstående kode skal du ændre tallet 99 til dit behov, for eksempel, når du indsætter 145 tomme rækker, skal du ændre tallet 99 til 144. Prøv det, håber det kan hjælpe dig!

Sub InsertRowsAtValueChange()
Dim Rng Som Range
Dæmp WorkRng As Range
On Error Resume Next
xTitleId = "KutoolsforExcel"
Indstil WorkRng = Application.Selection
Indstil WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
Application.ScreenUpdating = False
For i = WorkRng.Rows.Count To 2 Trin -1
Hvis WorkRng.Cells(i, 1).Value <> WorkRng.Cells(i - 1, 1).Value Then
Range(WorkRng.Cells(i, 1).EntireRow, WorkRng.Cells(i + 99, 1).EntireRow).Indsæt
End If
Næste
Application.ScreenUpdating = True
End Sub
Denne kommentar blev minimeret af moderatoren på webstedet
Meget hjælpsom. Koden, som skyyang viser ovenfor, fungerede perfekt. Bare sørg for, at dataene ikke allerede har mellemrum i sig.

Jeg forstår ikke VBA, men jeg tror, ​​at hvis du ville tilføje flere rækker under data, der allerede havde mellemrummet, burde der være en måde at ignorere mellemrum.

Kan en linje tilføjes for at ignorere eller springe tomme linjer over? Det kan gøre denne kode mere universel og gentagelig, hvis det er nødvendigt. Også en slettefunktion, der ligner denne, kan være nyttig, så det er ikke nødvendigt at fortryde.
Denne kommentar blev minimeret af moderatoren på webstedet
Kan VBA-metoden tilpasses til at ignorere tomme celler? Jeg har en fil, som jeg skal indsætte rækker i baseret på to forskellige kolonner, men når jeg kører makroen på den anden kolonne ender jeg med tre tomme linjer, hvor den første makro kører indsatte rækker.
Eller kan den køre på to kolonner på samme tid?
Der er endnu ingen kommentarer her
Efterlad dine kommentarer
Sender som gæst
×
Bedøm dette indlæg:
0   Tegn
Foreslåede steder

Følg os

Copyright © 2009 - www.extendoffice.com. | Alle rettigheder forbeholdes. Drevet af ExtendOffice. | | Sitemap
Microsoft og Office-logoet er varemærker eller registrerede varemærker tilhørende Microsoft Corporation i USA og / eller andre lande.
Beskyttet af Sectigo SSL