Przejdź do głównej zawartości

Jak wstawić określoną liczbę wierszy w ustalonych odstępach czasu w programie Excel?

W arkuszu programu Excel możesz wstawić pusty wiersz między istniejącymi wierszami za pomocą funkcji Wstaw. Ale jeśli masz duży zakres danych i musisz wstawić dwa puste wiersze po co trzecim drugim wierszu, jak możesz szybko i wygodnie zakończyć tę pracę?


Wstaw określoną liczbę pustych wierszy do zakresu danych w stałych odstępach czasu z kodem VBA

Poniższy kod VBA może pomóc wstawić określoną liczbę wierszy po każdym n-tym wierszu w istniejących danych. Wykonaj następujące czynności:

1. Przytrzymaj ALT + F11 klucze w programie Excel i otwiera plik Microsoft Visual Basic for Applications okno.

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

Kod VBA: wstaw określoną liczbę wierszy do danych w stałych odstępach czasu

Sub InsertRowsAtIntervals()
'Updateby Extendoffice
Dim Rng As Range
Dim xInterval As Integer
Dim xRows As Integer
Dim xRowsCount As Integer
Dim xNum1 As Integer
Dim xNum2 As Integer
Dim WorkRng As Range
Dim xWs As Worksheet
xTitleId = "KutoolsforExcel"
Set WorkRng = Application.Selection
Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)
xRowsCount = WorkRng.Rows.Count
xInterval = Application.InputBox("Enter row interval. ", xTitleId, 1, Type:=1)
xRows = Application.InputBox("How many rows to insert at each interval? ", xTitleId, 1, Type:=1)
xNum1 = WorkRng.Row + xInterval
xNum2 = xRows + xInterval
Set xWs = WorkRng.Parent
For i = 1 To Int(xRowsCount / xInterval)
    xWs.Range(xWs.Cells(xNum1, WorkRng.Column), xWs.Cells(xNum1 + xRows - 1, WorkRng.Column)).Select
    Application.Selection.EntireRow.Insert
    xNum1 = xNum1 + xNum2
Next
End Sub

3. Po wklejeniu tego kodu naciśnij F5 Aby uruchomić ten kod, pojawi się okienko zachęty przypominające o wyborze zakresu danych, do którego chcesz wstawić puste wiersze, patrz zrzut ekranu:

4. Kliknij OK przycisk, pojawi się kolejne okno zachęty, wprowadź liczbę odstępów między wierszami, patrz zrzut ekranu:

5. Kliknij dalej OK przycisk, w następnym wyskakującym okienku zachęty wprowadź liczbę pustych wierszy, które chcesz wstawić, patrz zrzut ekranu:

6. Następnie kliknij OK, a puste wiersze zostały wstawione do istniejących danych w regularnych odstępach czasu, patrz zrzuty ekranu:


Wstaw określoną liczbę pustych wierszy do zakresu danych na podstawie wartości komórek z kodem VBA

Czasami może być konieczne wstawienie pustych wierszy na podstawie listy wartości komórek, w tym przypadku poniższy kod VBA może wyświadczyć ci przysługę, wykonaj następujące czynności:

1. Przytrzymaj ALT + F11 klucze w programie Excel i otwiera plik Microsoft Visual Basic for Applications okno.

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

Kod VBA: wstaw określoną liczbę pustych wierszy na podstawie listy liczb:

Sub Insertblankrowsbynumbers ()
'UpdatebyExtendoffice
Dim xRg As Range
Dim xAddress As String
Dim I, xNum, xLastRow, xFstRow, xCol, xCount As Long
On Error Resume Next
xAddress = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select the spefic number column to use(single column):", "Kutools For Excel", xAddress, , , , , 8)
If xRg Is Nothing Then Exit Sub
Application.ScreenUpdating = False
xLastRow = xRg(1).End(xlDown).Row
xFstRow = xRg.Row
xCol = xRg.Column
xCount = xRg.Count
Set xRg = xRg(1)
For I = xLastRow To xFstRow Step -1
xNum = Cells(I, xCol)
If IsNumeric(xNum) And xNum > 0 Then
Rows(I + 1).Resize(xNum).Insert
xCount = xCount + xNum
End If
Next
xRg.Resize(xCount, 1).Select
Application.ScreenUpdating = True
End Sub

3. Po wklejeniu tego kodu naciśnij F5 Aby uruchomić ten kod, w wyskakującym oknie dialogowym wybierz listę liczb, na podstawie których chcesz wstawić puste wiersze, zobacz zrzut ekranu:

4. Następnie kliknij OK, a otrzymasz potrzebne wyniki, jak pokazano na poniższych zrzutach ekranu:


Wstaw określoną liczbę pustych wierszy do zakresu danych w stałych odstępach czasu z przydatną funkcją

Jeśli nie znasz powyższego kodu VBA, Kutools dla programu Excel też może ci pomóc, jego Wstaw puste wiersze i kolumny Funkcja może szybko i łatwo wstawiać określoną liczbę wierszy lub kolumn do istniejących danych w ustalonych odstępach czasu.

Uwaga:Aby to zastosować Wstaw puste wiersze i kolumny , po pierwsze, należy pobrać plik Kutools dla programu Excel, a następnie szybko i łatwo zastosuj tę funkcję.

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Wybierz zakres danych, w którym chcesz wstawiać puste wiersze w odstępach czasu.

2. Kliknij Kutools > wstawka > Wstaw puste wiersze i kolumnyzobacz zrzut ekranu:

3, w Wstaw puste wiersze i kolumny okno dialogowe, wybierz Puste wiersze opcja z Wstaw typ, a następnie określ liczbę interwałów i pustych wierszy, których chcesz użyć, jak pokazano na poniższym zrzucie ekranu:

4. Następnie kliknij OK przycisk, a puste wiersze zostały wstawione do wybranego zakresu w określonych odstępach czasu, jak pokazano na poniższym zrzucie ekranu:

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


Kopiuj i wstawiaj wiersze wiele razy na podstawie określonych liczb z kodem VBA

Przypuśćmy, że masz zakres tada, a teraz chcesz skopiować każdy wiersz i wkleić je wiele razy do następnego wiersza na podstawie listy liczb, jak pokazano poniżej. Jak można rozwiązać to zadanie w arkuszu programu Excel?

Aby poradzić sobie z tą pracą, wprowadzę dla Ciebie przydatny kod, wykonaj następujące czynności:

1. Przytrzymaj ALT + F11 klucze w programie Excel i otwiera plik Microsoft Visual Basic for Applications okno.

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

Kod VBA: Kopiuj i wstawiaj wiersze wiele razy na podstawie określonych liczb:

Sub CopyRows()
'UpdatebyExtendoffice
Dim xRg As Range
Dim xCRg As Range
Dim xFNum As Integer
Dim xRN As Integer
On Error Resume Next
SelectRange:
xTxt = ActiveWindow.RangeSelection.Address
Set xRg = Application.InputBox("Select the list of numbers to copy the rows based on: ", "Kutools for Excel", xTxt, , , , , 8)
If xRg Is Nothing Then Exit Sub

If xRg.Columns.Count > 1 Then
MsgBox "Please select single column!"
GoTo SelectRange
End If
Application.ScreenUpdating = False
For xFNum = xRg.Count To 1 Step -1
Set xCRg = xRg.Item(xFNum)
xRN = CInt(xCRg.Value)
With Rows(xCRg.Row)
.Copy
.Resize(xRN).Insert
End With
Next
Application.ScreenUpdating = True
End Sub

3. Po wklejeniu tego kodu naciśnij F5 klucz do uruchomienia tego kodu, w wyskakującym oknie dialogowym wybierz listę liczb, które chcesz skopiować i wstaw wiersze danych na podstawie, patrz zrzut ekranu:

4. Następnie kliknij OK przycisk, a określona liczba wierszy została skopiowana i wklejona pod każdym oryginalnym wierszem, patrz zrzuty ekranu:


Kopiuj i wstawiaj wiersze wiele razy na podstawie określonych liczb z niesamowitą funkcją

Jeśli Kutools dla programu Excel, Z siedzibą w Zduplikowane wiersze / kolumny na podstawie wartości komórki funkcja, możesz szybko i łatwo wstawiać wiersze lub kolumny na podstawie listy numerów.

Uwaga:Aby to zastosować Zduplikowane wiersze / kolumny na podstawie wartości komórki, po pierwsze, należy pobrać plik Kutools dla programu Excel, a następnie szybko i łatwo zastosuj tę funkcję.

Po zainstalowaniu Kutools dla programu Excelwykonaj następujące czynności:

1. Kliknij Kutools > wstawka > Zduplikowane wiersze / kolumny na podstawie wartości komórkizobacz zrzut ekranu:

2, w Skopiuj i wstaw wiersze i kolumny okno dialogowe, wybierz Skopiuj i wstaw wiersze opcja w Rodzaj Nieruchomości , a następnie wybierz zakres danych, który chcesz powielić, a następnie określ listę wartości, na podstawie których chcesz skopiować wiersze, zobacz zrzut ekranu:

4. Następnie kliknij Ok or Aplikuj przycisk, otrzymasz taki wynik, jak potrzebujesz:

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

Więcej artykułów względnych:

  • Kopiuj i wstaw wiersz wiele razy lub powiel wiersz X razy
  • Czy w swojej codziennej pracy próbowałeś kiedyś skopiować wiersz lub każdy wiersz, a następnie wstawić wiele razy poniżej bieżącego wiersza danych w arkuszu? Na przykład mam zakres komórek, teraz chcę skopiować każdy wiersz i wkleić je 3 razy do następnego wiersza, jak pokazano na zrzucie ekranu. Jak mógłbyś sobie poradzić z tą pracą w Excelu?
  • 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.
  • Skopiuj wiersze z wielu arkuszy roboczych na podstawie kryteriów do nowego arkusza
  • Przypuśćmy, że masz skoroszyt z trzema arkuszami roboczymi, które mają takie samo formatowanie, jak pokazano na poniższym zrzucie ekranu. Teraz chcesz skopiować wszystkie wiersze z tych arkuszy, w których kolumna C zawiera tekst „Ukończono”, do nowego arkusza. Jak możesz szybko i łatwo rozwiązać ten problem bez kopiowania i wklejania ich ręcznie jeden po drugim?

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 (39)
Rated 5 out of 5 · 2 ratings
This comment was minimized by the moderator on the site
Marvelous vba script!
I had over 5000 rows that i need to add new rows to in between. All other guides told me to make "helper" column it would take me good part of my life to add 1,2 copy paste over and over again just to add new rows.
So, Thanks for this!
Rated 5 out of 5
This comment was minimized by the moderator on the site
hola, hay algun codigo que me permita copiar los datos, pero que en la primera columna que son fechas puedan ser consecutivas.

ejemplo

en vez de que quede asi

10/01/2022 19.258.369-4 Juan Ramirez
10/01/2022 19.258.369-4 Juan Ramirez
10/01/2022 19.258.369-4 Juan Ramirez

quede asi

10/01/2022 19.258.369-4 Juan Ramirez
11/01/2022 19.258.369-4 Juan Ramirez
12/01/2022 19.258.369-4 Juan Ramirez

gracias
This comment was minimized by the moderator on the site
hola, hay algun codigo que me permita copiar los datos, pero que en la primera columna que son fechas pueda ser consecutivo.

ejemplo

en vez de que quede asi

01/10/2022 19.258.369-4 Juan Ramirez
01/10/2022 19.258.369-4 Juan Ramirez
01/10/2022 19.258.369-4 Juan Ramirez

quede asi

01/10/2022 19.258.369-4 Juan Ramirez
02/10/2022 19.258.369-4 Juan Ramirez
03/10/2022 19.258.369-4 Juan Ramirez

gracias
This comment was minimized by the moderator on the site
Name Email Phone Address
0 Name Email Phone Adress
address line 2 Name Phone 0
Name Email Phone Adress
0 Name Email Phone Adress
address line 2 0


How could I edit this to start a new row at every empty value or 0 value without having phone numbers with 0 start a new row?
This comment was minimized by the moderator on the site
Hello, Jarrod

Sorry, I can't get your problem clearly.
Could you explain your problem more detailed? Or you can insert a screenshot or file here.
Thank you!
This comment was minimized by the moderator on the site
Вот выручили так выручили!
Сидел, ломал голову как добавить строки по заданному количеству.
Ваш макрос мне очень помог.
Rated 5 out of 5
This comment was minimized by the moderator on the site
can you tell me how to insert column like this way , what is the code
This comment was minimized by the moderator on the site
Hello friend,
You can use this VBA code:

Sub InsertColumnsAtIntervals()

'Updateby Extendoffice

Dim Rng As Range

Dim xInterval As Integer

Dim xColumns As Integer

Dim xColumnsCount As Integer

Dim xNum1 As Integer

Dim xNum2 As Integer

Dim WorkRng As Range

Dim xWs As Worksheet

xTitleId = "KutoolsforExcel"

Set WorkRng = Application.Selection

Set WorkRng = Application.InputBox("Range", xTitleId, WorkRng.Address, Type:=8)

xColumnsCount = WorkRng.Columns.Count

xInterval = Application.InputBox("Enter column interval. ", xTitleId, 1, Type:=1)

xColumns = Application.InputBox("How many columns to insert at each interval? ", xTitleId, 1, Type:=1)

xNum1 = WorkRng.Column + xInterval

xNum2 = xColumns + xInterval

Set xWs = WorkRng.Parent

For i = 1 To Int(xColumnsCount / xInterval)

    xWs.Range(xWs.Cells(WorkRng.Row, xNum1), xWs.Cells(WorkRng.Row, xNum1 + xColumns - 1)).Select

    Application.Selection.EntireColumn.Insert

    xNum1 = xNum1 + xNum2

Next

End Sub


Sincerely,
Mandy
This comment was minimized by the moderator on the site
Muito obrigado, salvou meu trabalho, eu não tinha ideia de como fazer. Muito obrigado mesmo!
This comment was minimized by the moderator on the site
Hello,
You are welcome. Glad it helps. Any questions, please feel free to contact us. Have a great day.
Sincerely,
Mandy
This comment was minimized by the moderator on the site
This is so Cool!! Thanks a lot
This comment was minimized by the moderator on the site
Can I get the VBA code for deletion of rows based on duplicate values in a selected column keeping all unique values?
This comment was minimized by the moderator on the site
Hello, Roy,If you want to remove rows based on duplicate values, normally, you can use the Remove Duplicates feature in Excel to remove the rows.Of course, if you need a VBA code, please use the below code: (First, you should select the data range that you want to remove, and then run this code, the rows based on the duplicate values in the first column of your selection will be removed at once. )<div data-tag="code">Sub Delete_duplicate_rows()
Dim Rng As Range
Set Rng = Selection
Rng.RemoveDuplicates Columns:=Array(1), Header:=xlYes
End SubPlease try, hope it can help you!
This comment was minimized by the moderator on the site
Thank you author! You deserve the best commendation for these! But please could you help me out with the code to put a constant value into all blank rows I created with your code above? To make myself more clearer, I need to insert a constant value into all blank rows (this solved already with your code above) then I need to insert a constant value into all of the blank rows (this is my problem). Thank you as I expect your kind response.
This comment was minimized by the moderator on the site
Hello, Do you mean to fill blank rows with specific value? If so, mabe the following article cna help you:https://www.extendoffice.com/documents/excel/772-excel-fill-blank-cells-with-0-or-specific-value.html
Please try it.
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations