Поделить строчки пробелами
ant6729
Дата: Среда, 27.07.2016, 11:28 |
Сообщение № 1
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Добрый день, в документе список данных, нужно, чтобы он делился на куски исходя из вводимого лимита строк в куске. Вводимый лимит может быть всегда разным. Скажем, заполненных строк 250 (как в присланном примере) Может быть и больше. И я хочу поделить, скажем, все по 10 строк Тогда пробелы вставятся через каждые 10 строк и получится 25 кусков.
Добрый день, в документе список данных, нужно, чтобы он делился на куски исходя из вводимого лимита строк в куске. Вводимый лимит может быть всегда разным. Скажем, заполненных строк 250 (как в присланном примере) Может быть и больше. И я хочу поделить, скажем, все по 10 строк Тогда пробелы вставятся через каждые 10 строк и получится 25 кусков. ant6729
Ответить
Сообщение Добрый день, в документе список данных, нужно, чтобы он делился на куски исходя из вводимого лимита строк в куске. Вводимый лимит может быть всегда разным. Скажем, заполненных строк 250 (как в присланном примере) Может быть и больше. И я хочу поделить, скажем, все по 10 строк Тогда пробелы вставятся через каждые 10 строк и получится 25 кусков. Автор - ant6729 Дата добавления - 27.07.2016 в 11:28
Roman777
Дата: Среда, 27.07.2016, 11:48 |
Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 980
Репутация:
127
±
Замечаний:
0% ±
Excel 2007, Excel 2013
ant6729 , Укажите, пожалуйста, в примере как Вы хотите разбить на "куски", ато не ясно, что за куски такие должны получиться.
ant6729 , Укажите, пожалуйста, в примере как Вы хотите разбить на "куски", ато не ясно, что за куски такие должны получиться.Roman777
Много чего не знаю!!!!
Ответить
Сообщение ant6729 , Укажите, пожалуйста, в примере как Вы хотите разбить на "куски", ато не ясно, что за куски такие должны получиться.Автор - Roman777 Дата добавления - 27.07.2016 в 11:48
Karataev
Дата: Среда, 27.07.2016, 11:58 |
Сообщение № 3
Группа: Проверенные
Ранг: Старожил
Сообщений: 1334
Репутация:
533
±
Замечаний:
0% ±
Excel
[vba]Код
Sub Макрос() Dim lngStep As Long, lgnRowsCount As Long Dim lr As Long, i As Long lngStep = InputBox("Введите количество строк в куске:") Application.ScreenUpdating = False lr = Columns("A").Find(What:="*", LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _ , SearchFormat:=False).Row lgnRowsCount = lr - 10 If lgnRowsCount Mod lngStep <> 0 Then lgnRowsCount = lgnRowsCount + (lngStep - (lgnRowsCount Mod lngStep)) End If lr = lgnRowsCount + 10 lr = lr - lngStep For i = lr To 11 Step -lngStep Rows(i + 1).Insert Next Application.ScreenUpdating = True End Sub
[/vba]
[vba]Код
Sub Макрос() Dim lngStep As Long, lgnRowsCount As Long Dim lr As Long, i As Long lngStep = InputBox("Введите количество строк в куске:") Application.ScreenUpdating = False lr = Columns("A").Find(What:="*", LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _ , SearchFormat:=False).Row lgnRowsCount = lr - 10 If lgnRowsCount Mod lngStep <> 0 Then lgnRowsCount = lgnRowsCount + (lngStep - (lgnRowsCount Mod lngStep)) End If lr = lgnRowsCount + 10 lr = lr - lngStep For i = lr To 11 Step -lngStep Rows(i + 1).Insert Next Application.ScreenUpdating = True End Sub
[/vba] Karataev
Ответить
Сообщение [vba]Код
Sub Макрос() Dim lngStep As Long, lgnRowsCount As Long Dim lr As Long, i As Long lngStep = InputBox("Введите количество строк в куске:") Application.ScreenUpdating = False lr = Columns("A").Find(What:="*", LookIn:=xlFormulas, LookAt:= _ xlPart, SearchOrder:=xlByRows, SearchDirection:=xlPrevious, MatchCase:=False _ , SearchFormat:=False).Row lgnRowsCount = lr - 10 If lgnRowsCount Mod lngStep <> 0 Then lgnRowsCount = lgnRowsCount + (lngStep - (lgnRowsCount Mod lngStep)) End If lr = lgnRowsCount + 10 lr = lr - lngStep For i = lr To 11 Step -lngStep Rows(i + 1).Insert Next Application.ScreenUpdating = True End Sub
[/vba] Автор - Karataev Дата добавления - 27.07.2016 в 11:58
_Boroda_
Дата: Среда, 27.07.2016, 11:58 |
Сообщение № 4
Группа: Модераторы
Ранг: Местный житель
Сообщений: 16674
Репутация:
6479
±
Замечаний:
0% ±
2003; 2007; 2010; 2013 RUS
Так нужно?Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A$274;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A11;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
В D9 - число 10 Кстати, заполненных строк 250 (как в присланном примере)
в примере 264 строки
Так нужно?Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A$274;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A11;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
В D9 - число 10 Кстати, заполненных строк 250 (как в присланном примере)
в примере 264 строки _Boroda_
Скажи мне, кудесник, любимец ба’гов... Платная помощь: Boroda_Excel@mail.ru Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
Ответить
Сообщение Так нужно?Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A$274;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
Код
=ЕСЛИ(ОСТАТ(СТРОКА(E1);$D$9+1);ИНДЕКС(A$11:A11;СЧЁТЕСЛИ(E$10:E10;"?*")+1);"")
В D9 - число 10 Кстати, заполненных строк 250 (как в присланном примере)
в примере 264 строки Автор - _Boroda_ Дата добавления - 27.07.2016 в 11:58
buchlotnik
Дата: Среда, 27.07.2016, 12:02 |
Сообщение № 5
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
как-то так [vba]Код
Sub razr() Dim i&, n&, u&, l&, c& n = CLng(InputBox("По скока строк рвать??")) u = ActiveSheet.UsedRange.Row l = ActiveSheet.UsedRange.Rows.Count c = u + l For i = u To c + c / n Step n + 1 Rows(i).Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Next i End Sub
[/vba]
как-то так [vba]Код
Sub razr() Dim i&, n&, u&, l&, c& n = CLng(InputBox("По скока строк рвать??")) u = ActiveSheet.UsedRange.Row l = ActiveSheet.UsedRange.Rows.Count c = u + l For i = u To c + c / n Step n + 1 Rows(i).Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Next i End Sub
[/vba] buchlotnik
Сообщение отредактировал buchlotnik - Среда, 27.07.2016, 12:03
Ответить
Сообщение как-то так [vba]Код
Sub razr() Dim i&, n&, u&, l&, c& n = CLng(InputBox("По скока строк рвать??")) u = ActiveSheet.UsedRange.Row l = ActiveSheet.UsedRange.Rows.Count c = u + l For i = u To c + c / n Step n + 1 Rows(i).Select Selection.Insert Shift:=xlDown, CopyOrigin:=xlFormatFromLeftOrAbove Next i End Sub
[/vba] Автор - buchlotnik Дата добавления - 27.07.2016 в 12:02
ant6729
Дата: Среда, 27.07.2016, 12:13 |
Сообщение № 6
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Ужас...ну, и мозг у Вас....) Да, так как я хотел. Karataev - пока не смотрел Посмотрел Boroda - да, подошло) Так как надо, дальше разберусь. Спасибо всем!!!
Ужас...ну, и мозг у Вас....) Да, так как я хотел. Karataev - пока не смотрел Посмотрел Boroda - да, подошло) Так как надо, дальше разберусь. Спасибо всем!!! ant6729
Ответить
Сообщение Ужас...ну, и мозг у Вас....) Да, так как я хотел. Karataev - пока не смотрел Посмотрел Boroda - да, подошло) Так как надо, дальше разберусь. Спасибо всем!!! Автор - ant6729 Дата добавления - 27.07.2016 в 12:13
ant6729
Дата: Среда, 27.07.2016, 13:08 |
Сообщение № 7
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Однако, если так, то не получается... Тогда только макросами...??
Однако, если так, то не получается... Тогда только макросами...?? ant6729
Ответить
Сообщение Однако, если так, то не получается... Тогда только макросами...?? Автор - ant6729 Дата добавления - 27.07.2016 в 13:08
ant6729
Дата: Среда, 27.07.2016, 13:18 |
Сообщение № 8
Группа: Проверенные
Ранг: Ветеран
Сообщений: 533
Репутация:
2
±
Замечаний:
40% ±
Excel 2010
Ок, а если Список начинается со второй строчки, и первая колонка уникальная Так практически идентично ситуации.
Ок, а если Список начинается со второй строчки, и первая колонка уникальная Так практически идентично ситуации. ant6729
Ответить
Сообщение Ок, а если Список начинается со второй строчки, и первая колонка уникальная Так практически идентично ситуации. Автор - ant6729 Дата добавления - 27.07.2016 в 13:18
buchlotnik
Дата: Среда, 27.07.2016, 14:10 |
Сообщение № 9
Группа: Заблокированные
Ранг: Участник клуба
Сообщений: 3442
Репутация:
929
±
Замечаний:
20% ±
2010, 2013, 2016 RUS / ENG
ant6729 , у вас вопрос задан в ветке про VBA, так чем макросы не устраивают? Формулу намудрил конечно, но вроде пашет: Код
=ЕСЛИ(ОСТАТ(СТРОКА()-1;$A$1+1);ИНДЕКС(A$2:A2;СТРОКА()-ОКРВВЕРХ(СТРОКА()/($A$1+1);1));"")
ant6729 , у вас вопрос задан в ветке про VBA, так чем макросы не устраивают? Формулу намудрил конечно, но вроде пашет: Код
=ЕСЛИ(ОСТАТ(СТРОКА()-1;$A$1+1);ИНДЕКС(A$2:A2;СТРОКА()-ОКРВВЕРХ(СТРОКА()/($A$1+1);1));"")
buchlotnik
Сообщение отредактировал buchlotnik - Среда, 27.07.2016, 14:13
Ответить
Сообщение ant6729 , у вас вопрос задан в ветке про VBA, так чем макросы не устраивают? Формулу намудрил конечно, но вроде пашет: Код
=ЕСЛИ(ОСТАТ(СТРОКА()-1;$A$1+1);ИНДЕКС(A$2:A2;СТРОКА()-ОКРВВЕРХ(СТРОКА()/($A$1+1);1));"")
Автор - buchlotnik Дата добавления - 27.07.2016 в 14:10
Manyasha
Дата: Среда, 27.07.2016, 14:13 |
Сообщение № 10
Группа: Модераторы
Ранг: Старожил
Сообщений: 2198
Репутация:
898
±
Замечаний:
0% ±
Excel 2010, 2016
ant6729 , для первой колонки замените в формуле Александра "?*" на ">"&0
ant6729 , для первой колонки замените в формуле Александра "?*" на ">"&0 Manyasha
ЯД: 410013299366744 WM: R193491431804
Ответить
Сообщение ant6729 , для первой колонки замените в формуле Александра "?*" на ">"&0 Автор - Manyasha Дата добавления - 27.07.2016 в 14:13