Всем привет! Необходимо вставить две скопированные строки в большую таблицу. В примере строки которые необходимо вставлять - желтая. Они должны вставать как показано зеленым, т.е раздвигать и вставляться. Свод очень большой и надо вставить эти две строки до конца, через строчку. Всем заранее спасибо за ответ!
Всем привет! Необходимо вставить две скопированные строки в большую таблицу. В примере строки которые необходимо вставлять - желтая. Они должны вставать как показано зеленым, т.е раздвигать и вставляться. Свод очень большой и надо вставить эти две строки до конца, через строчку. Всем заранее спасибо за ответ!Марс16
А точно надо брать именно две (через две) строки после свода и вставлять? Или эти строчки (которые нужно вставить) находятся где-то в другом месте? А как определить, что строки ещё не вставлялись? Или уже были вставлены? Или были вставлены, но, возможно, где-то удалены? И все данные - это только значения? Или где-то есть формулы?
А правильнее было бы не "раздвигать-вставлять", а собрать новый свод, копируя в цикле последовательно по одной строке из имеющегося, и затем нужный кусок "вставляемого"... Третий принцип - "источник данных не должен модифицироваться" :)
А точно надо брать именно две (через две) строки после свода и вставлять? Или эти строчки (которые нужно вставить) находятся где-то в другом месте? А как определить, что строки ещё не вставлялись? Или уже были вставлены? Или были вставлены, но, возможно, где-то удалены? И все данные - это только значения? Или где-то есть формулы?
А правильнее было бы не "раздвигать-вставлять", а собрать новый свод, копируя в цикле последовательно по одной строке из имеющегося, и затем нужный кусок "вставляемого"... Третий принцип - "источник данных не должен модифицироваться" :)AndreTM
Вставлять надо только две смежные строки, которые выделены желтым цветом ниже. Вставлять надо так как указано выше в таблице, т.е через строчку в уже имеющемся своде (до конца этого самого свода).
Вставлять надо только две смежные строки, которые выделены желтым цветом ниже. Вставлять надо так как указано выше в таблице, т.е через строчку в уже имеющемся своде (до конца этого самого свода).Марс16
Сообщение отредактировал Марс16 - Среда, 29.01.2014, 08:11
Добрый день. Оговорюсь сразу, вопрос не по табелю учета рабочего времени. У меня подобная задача: имею график работы и табель который автоматом считает время больничные и т.п. Но при копировании (выделяю D3-H5, Ctrl+С) ячеек и вставляю в D6, (Ctrl+V) мои значения в формулах перескакивают через 4 строчки, а надо через 1-у. Пробовал через "СМЕЩ" - неполучилось. Как быть?
Добрый день. Оговорюсь сразу, вопрос не по табелю учета рабочего времени. У меня подобная задача: имею график работы и табель который автоматом считает время больничные и т.п. Но при копировании (выделяю D3-H5, Ctrl+С) ячеек и вставляю в D6, (Ctrl+V) мои значения в формулах перескакивают через 4 строчки, а надо через 1-у. Пробовал через "СМЕЩ" - неполучилось. Как быть?Водяной
Вставлять надо так как указано выше в таблице, т.е через строчку
А в примере через две первых потом через одну. Не стыковка какая-то. (Модераторам). ИМХО, это задача решаема посредством VBA, и наверное должна быть в соответствующем разделе.
Вставлять надо так как указано выше в таблице, т.е через строчку
А в примере через две первых потом через одну. Не стыковка какая-то. (Модераторам). ИМХО, это задача решаема посредством VBA, и наверное должна быть в соответствующем разделе.Wasilich
Сообщение отредактировал Wasilic - Среда, 29.01.2014, 12:48
Wasilic, Исправил пример. Исходная таблица в реальности имеет огромное количество строк. Через строчку нужно вставить две строчки, которые на листе "Строки для вставки" (эти строки не меняются). Окончательный вид должен быть как на листе "Таблица окончательная".
Wasilic, Исправил пример. Исходная таблица в реальности имеет огромное количество строк. Через строчку нужно вставить две строчки, которые на листе "Строки для вставки" (эти строки не меняются). Окончательный вид должен быть как на листе "Таблица окончательная".Марс16
Исправил пример. Исходная таблица в реальности имеет огромное количество строк. Через строчку нужно вставить две строчки, которые на листе "Строки для вставки" (эти строки не меняются). Окончательный вид должен быть как на листе "Таблица окончательная".
Всем добрый день! Если есть предложения прошу откликнуться!
Исправил пример. Исходная таблица в реальности имеет огромное количество строк. Через строчку нужно вставить две строчки, которые на листе "Строки для вставки" (эти строки не меняются). Окончательный вид должен быть как на листе "Таблица окончательная".
Всем добрый день! Если есть предложения прошу откликнуться!Марс16
Public Sub www() Dim r As Range, l&, i Application.ScreenUpdating = 0 l = [a65536].End(xlUp).Row For i = l To 3 Step -1 Sheets("Строки для вставки").[a3].CurrentRegion.Copy Range(Cells(i, 1), Cells(i, 13)).Insert Next Application.ScreenUpdating = -1 End Sub
[/vba]
[vba]
Код
Public Sub www() Dim r As Range, l&, i Application.ScreenUpdating = 0 l = [a65536].End(xlUp).Row For i = l To 3 Step -1 Sheets("Строки для вставки").[a3].CurrentRegion.Copy Range(Cells(i, 1), Cells(i, 13)).Insert Next Application.ScreenUpdating = -1 End Sub