Страницы: 1
RSS
Вставка разрывов страницы
 
Загадка. Есть столбец "А" с повторяющимися записями:  
 
1  
1  
2  
2  
3  
3  
3  
 
Нужно вставить разрыв страницы, после каждой группы повторов:  
 
1  
1  
[разрыв стр.]
2  
2  
[разрыв стр.]
3  
3  
3  
[разрыв стр.]
 
Dim r  
   For r = 2 To Cells(Rows.Count, 1).End(xlUp).Row - 1  
       If Cells(r, 1) <> Cells(r - 1, 1) Then ActiveSheet.HPageBreaks.Add Before:=Cells(r, 1)  
   Next r
 
Если взять за основу код отсюда:  
http://www.programmersforum.ru/showthread.php?t=60916  
 
то получится что-то вроде этого:  
 
Sub test()  
   awv = ActiveWindow.View: ActiveWindow.View = xlPageBreakPreview  
   ActiveSheet.ResetAllPageBreaks: '  On Error Resume Next  
   Dim cell As Range: Application.ScreenUpdating = False  
   For Each cell In Range([A2], Range("A" & Rows.Count).End(xlUp)).Cells
       if cell<>cell.offset(-1) then ActiveSheet.HPageBreaks.Add cell  
   Next cell  
   ActiveWindow.View = awv  
End Sub  
 
 
PS: без строки ActiveWindow.View = xlPageBreakPreview  
код может выдавать ошибку
 
Усложним задачу.  
Есть таблица с шапкой (на несколько строк) и повторяющимися значениями в первом столбце  
А|B|C|D  
1  
1  
1  
2  
2  
3  
3  
3  
 
Необходимо вставить скопированную шапку после каждого повторяющегося значения:  
 
А|B|C|D  
1  
1  
1  
А|B|C|D  
2  
2  
А|B|C|D  
3  
3  
3  
А|B|C|D
 
Я прекрасно знаю какой подход должен быть. Мне нужно разобраться с поставленной задачей, которую пришлось разделить на 2 этапа. После ее рещения, естественно последуют слова благодарности, и закрытие темы.    
"Усложним задачу" - это всего лишь мой стиль общения. Извините, если кого обидел...  
Оба макроса отлично работают, спасибо! Но теперь не могу решить вставку скопированных строк.
 
{quote}{login=i-le}{date=01.07.2011 12:40}{thema=Re: Re: Вставка скопированных строчек}{post}...Мне нужно разобраться с поставленной задачей...{/post}{/quote}  
Так и пишите об этом, а вот такие вещи - "загадка", "усложним задачу" - больше походят на тестирование способностей жителей Планеты.
 
{quote}{login=i-le}{date=01.07.2011 12:40}{thema=Re: Re: Вставка скопированных строчек}{post}  
"Усложним задачу" - это всего лишь мой стиль общения...  
Но теперь не могу решить вставку скопированных строк.{/post}{/quote}  
Как будто до этого Вы что-то решили. Общайтесь и дальше в таком стиле. Это вдохновляет.
 
Я был. Отвлекли - не глянул, что разлогинился.
Я сам - дурнее всякого примера! ...
 
Ребята, помогите пожалуйста с макросом для вставки скопированных строчек. К форумам обращаюсь первый раз. Изаините, что не так себя повел.  
Заранее благодарен.
 
{quote}{login=i-le}{date=01.07.2011 02:34}{thema=Вставка скопированных строчек}{post}Ребята, помогите пожалуйста с макросом для вставки скопированных строчек. К форумам обращаюсь первый раз. Изаините, что не так себя повел.  
Заранее благодарен.{/post}{/quote}  
 
Если правильно понял, то так.. см файл  
 
Sub test()  
Dim i As Long  
i = Cells(Rows.Count, 1).End(xlUp).Row  
Do While i > 2  
   If Cells(i, 1) <> Cells(i - 1, 1) Then  
       [A1:D1].Copy
       Cells(i, 1).Insert Shift:=xlDown  
   End If  
i = i - 1  
Loop  
Application.CutCopyMode = False  
[A1].Select
End Sub
Редко но метко ...
 
Класс! Все работает как надо.  
Отдельная благодарность GIG_ant и EducatedFool! Спасибо парни!  
Тема исчерпана!
 
Добрый день! Очень прошу помочь- нужно вставить несколько скопированных строчек каждые 13 строчек с данными, чтобы получалось типа шапки на листе. Строк всего более 40 тыс,так что вручную это сделать нереально. Заранее всем огромное спасибо, спасете меня от многоасового копипаста.
i.
Страницы: 1
Читают тему
Наверх
Loading...