Страницы: 1
RSS
Размножить таблицы на листе
 
Приветствую.

Возникла необходимость сделать следующее:
Есть лист exel. В нем таблица. Нужно скопировать эту таблицу с отступом в одну строку ниже 200 раз подряд нажатием кнопки. Т.е чтобы получилось на одном листе 200 одинаковых таблиц расположенных друг под другом. Как такое можно осуществить???

Спасибо.
 
Таблица заканчивается на строке 41 или 81?
 
41
ниже идет опять такая же таблица - это я для примера скопировал и вставил ее чтоб понятней было как должна копироваться таблица
 
Цитата
serfer777 написал: 200 одинаковых таблиц расположенных друг под другом
по 40 строк каждая ;).!!! Вот Вы потом работать с ними замучаетесь!
Какова высшая цель сего извращения?
Изменено: Sanja - 12.03.2015 13:46:45
Согласие есть продукт при полном непротивлении сторон
 
Код
Sub tablee()
Set Rng = [A2:E41]
rr = Rng.Rows.Count
For i = 1 To 200
    Rng.Copy Rng.Offset(rr * i, 0)
Next
End Sub
Работать надо не 12 часов, а головой.
 
Даже не знаю как правильно ответить. Девочки на складе попросили такое - зачем сам не пойму. Хотят вот так размножать таблички.:)
 
Код
Sub tt()
    Dim r As Range, i&

    Application.ScreenUpdating = False
    Set r = [a2:e41]

    For i = 1 To 199
        r.Copy
        [a1].Insert Shift:=xlDown
    Next
    Application.ScreenUpdating = True
End Sub

 
Отлично!
Всем спасибо за участие!!!
 
Код
Sub CopyRange()
Dim Rng As Range, i As Integer, x As Integer
    Set Rng = Range(Cells(3, 1), Cells(41, 5))
    x = 43
    Application.ScreenUpdating = False
    For i = 1 To 200
        Rng.Copy Cells(x, 1)
        x = x + 40
    Next
    Application.ScreenUpdating = True
End Sub



 
Юра, не правильно! Их заказывали 200! :)
 
Согласен: нужно было ПОЛУЧИТЬ 200 штук, а я 200 раз скопировал. Ну ничего, если одну табличку испортят - будет одна запасная))
 
Проблема такая же, но размер таблиц всегда разный, есть вариант с подобным макросом, который при запуске уточнял размер таблицы и сколько раз ее нужо повторить?
Изменено: Inferno2402 - 05.12.2015 16:39:55
 
Цитата
Inferno2402 написал: Проблема такая же
Все говорят "проблема такая же", а Вы почитайте правила и сделайте как в них написано:
Цитата
2.2. Опишите максимально подробно вашу задачу и желаемый результат. Желательно уточнить вашу версию Excel.
   2.3. Приложите файл(ы) с примером (общим весом не более 100 Кб) в реальной структуре и форматах данных того, что есть сейчас и того, что хотелось бы на выходе.
   2.4. Не прикладывайте файлы-примеры с персональными данными, конфиденциальной информацией, коммерческой или государственной тайной! Яндекс и Google не спят - проиндексируют ваши данные и привет - они попадут в открытый доступ. И даже удаление темы потом не поможет.
А лучше создайте свою тему.

Формула массива (ФМ) вводится Ctrl+Shift+Enter
Memento mori
 
JayBhagavan,  по-моему задача достаточно четко  поставлена в данной теме, и достаточно четко описан желаемый результат, файл с примером уже есть в данной теме, от того что я приложу свою таблицу ничего не изменится. Данная тема мне очень помогла, пользуюсь  вариантом, предложенным пользователем Leanna, но нужен более гибкий вариант, который будет запрашивать размер таблицы и количество раз копирования.
 
Примерно так
М-да, посмотрел пример.
Код
Sub CopyRange()
    Dim Rng As Range, i As Integer, x As Integer, j&
    x = InputBox("Number of rows in table") + 3
    Set Rng = Range("a3:e" & x)
    Application.ScreenUpdating = False
    For i = 1 To InputBox("Number of copies table")
        j = j + x: Rng.Copy Cells(j, 1).Offset(3):
    Next
    Application.ScreenUpdating = True
End Sub
Изменено: kuklp - 15.03.2016 00:15:18
Я сам - дурнее всякого примера! ...
 
kuklp, Спасибо, почти идеальный вариант, немного его подредактировал и стало просто то что надо, единственное - между первым и следующими шаблонами каждый раз появляются две пустые строки и как их убрать я так и не разобрался
Страницы: 1
Наверх