powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка пустых строк в большом списке
7 сообщений из 7, страница 1 из 1
Вставка пустых строк в большом списке
    #34048982
USB2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть огромный файл, содержащий список из фамилий, причём одна фамилия может повторяться несколько раз.

Например:

Иванов
Иванов
Иванов
Федоров
Петров
Петров
Петров
Петров
Петров
Голубев
Голубев

Вопрос: как после каждой фамилии вставить пустую строчку, а лучше сразу две? Файл огромный, и их очень много, поэтому ручная обработка будет длиться очень долго. Заранее благодарен!
...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34049012
SirFisher
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
где-то так:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
Sub t()
    Dim CountRows As String
    
    Range("A1").Select
    CountRows = Application.CountA(ActiveSheet.Range("A:A"))
    i =  0 
    For i = i +  1  To CountRows -  1 
        ActiveCell.Offset( 1 ,  0 ).Rows("1:2").EntireRow.Select
        Selection.Insert Shift:=xlDown
        Selection.End(xlDown).Select
    Next i

    Range("A1").Select
    
End Sub
...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34049063
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если речь о "после каждой фамилии", а не после каждой строки, то, предположив, что данные нах. в столбце А, в строке 1 есть заголовок столбца и что не получится более 8,170 несмежных строк, я бы использовал что-то в этом духе:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Sub Test()
With Application
.DisplayAlerts = False
.ScreenUpdating = False
End With
With ActiveSheet
With .Range(.[A1], .[A65536].End(xlUp)).Resize(,  2 )
.Subtotal _
GroupBy:= 1 , _
Function:=xlCount, _
TotalList:=Array( 2 ), _
Replace:=False, _
PageBreaks:=False, _
SummaryBelowData:=False
.SpecialCells(xlCellTypeFormulas).EntireRow.ClearContents
.Cells.EntireRow.ClearOutline
End With
End With
With Application
.DisplayAlerts = True
.ScreenUpdating = True
End With
End Sub

Возможно понадобится доп. чистка кода, т.к. он сделан вчерновую прямо в IE и не испытывался в Excel (но думаю работать должен)


KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34049282
USB2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
SirFisher, спасибо, но этот код вставляет строчки после каждой строки!

KL (XL) - большое спасибо! После каждой фамилии вставляется одна строка. Если надо две, то можно второй раз выполнить макрос.

Но теперь задача усложнилась. После того, как строки вставлены, нужно сделать так, чтобы после каждого блока с одной фамилией подсчитывались итоги в двух столбцах. Всего столбцов 7, итоги нужны в 6-ом и 7-ом, т.е. в столбцах F и G.
Пример:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
Иванов	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 90 
Иванов	ххххххххх	хххххххх	хххххх	хх	 2   000 , 00   	 90 
Иванов	ххххххххх	хххххххх	хххххх	хх	 2   500 , 00   	 126 , 5 
Иванов	ххххххххх	хххххххх	хххххх	хх	 3   300 , 00   	 140 
Иванов	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 150 
Иванов	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 160 
Иванов	ххххххххх	хххххххх	хххххх	хх	 3   000 , 00   	 200 
___________________					 13   800 , 00   	 956 , 50   
						
Федоров	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 29 , 7 
Федоров	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 49 , 5 
Федоров	ххххххххх	хххххххх	хххххх	хх	 3   000 , 00   	 145 , 2 
___________________					 5   000 , 00   	 224 , 40   
						
Голубев	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 30 
Голубев	ххххххххх	хххххххх	хххххх	хх	 1   000 , 00   	 40 
Голубев	ххххххххх	хххххххх	хххххх	хх	 2   000 , 00   	 60 
Голубев	ххххххххх	хххххххх	хххххх	хх	 500 , 00   	 60 
Голубев	ххххххххх	хххххххх	хххххх	хх	 1   500 , 00   	 73 , 92 
___________________					 6   000 , 00   	 263 , 92 

К сожалению, к программированию имею пока небольшое отношение, а работу надо сделать срочно...
...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34049424
Фотография k-nike
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Используйте сводную таблицу.

...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34050725
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
Sub Test()
    With Application
        .DisplayAlerts = False
        .ScreenUpdating = False
    End With
    With ActiveSheet
        With .Range(.[A1], .[A65536].End(xlUp)).Resize(,  10 )
            .Subtotal _
                GroupBy:= 1 , _
                Function:=xlSum, _
                TotalList:=Array( 6 ,  7 ), _
                Replace:=True, _
                PageBreaks:=False, _
                SummaryBelowData:=True
            .SpecialCells(xlCellTypeFormulas).EntireRow.Font.Bold = True
            .Cells.EntireRow.ClearOutline
        End With
    End With
    With Application
        .DisplayAlerts = True
        .ScreenUpdating = True
    End With
End Sub

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
Вставка пустых строк в большом списке
    #34050743
KL (XL)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Это можно сделать и без программирования. Меню Данные-Итоги...

KL
[MVP - Microsoft Excel]
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Вставка пустых строк в большом списке
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]