Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Excel
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.11.2009, 08:54   #1
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию Как скопировать диапазон несколько раз?

Подскажите плз. как скопировать диапазон к примеру ("A1:D3") под друг другом...т.е. следующий находится под первым, следующий под вторым...и так 100 раз?
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 09:00   #2
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Например так:
Код:
Dim i As Integer: Application.ScreenUpdating = False
For i = 4 To 300 Step 3: [A1:D3].Copy Cells(i, 1): Next
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 19.11.2009, 09:35   #3
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

Ничего не понял, а как тогда сделать для большого диапазона A13:P97? и нужно будет скопировать 230 раз???
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 09:41   #4
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

Не получается почему-то по аналогии...
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 09:49   #5
Юнлинг
Форумчанин
 
Регистрация: 17.10.2008
Сообщений: 239
По умолчанию

Цитата:
Сообщение от Алексей11111 Посмотреть сообщение
Не получается почему-то по аналогии...
Может быть так будет более понятно
Код:
Dim i As Integer: Application.ScreenUpdating = False
For i = 1 To 230 Step 3: [A13:P97].Copy Cells(i*85+13, 1): Next
где 85 - разница строк плюс 1,
а 13 - номер первой строки
Юнлинг вне форума Ответить с цитированием
Старый 19.11.2009, 09:55   #6
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

Попробуй и ничего не получится...
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 09:59   #7
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

Спасибо, так понятнее, только оно как-то не так копирует, не сразу после каждого диапазона..
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 10:01   #8
SAS888
Старожил
 
Аватар для SAS888
 
Регистрация: 05.12.2007
Сообщений: 4,180
По умолчанию

Код:
Sub Main()
    Dim i As Long: Application.ScreenUpdating = False
    For i = 98 To 85 * 230 Step 85: [A13:P97].Copy Cells(i, 1): Next
End Sub
98 - строка, начиная с которой будем вставлять данные.
85 - № последней строки диапазона минус № первой строки диапазона плюс 1
230 - количество копирований
Чем шире угол зрения, тем он тупее.
SAS888 вне форума Ответить с цитированием
Старый 19.11.2009, 10:04   #9
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

А всё спасибо большое, разобрался...там немного поменьять надо было...
Алексей11111 вне форума Ответить с цитированием
Старый 19.11.2009, 10:13   #10
Алексей11111
Пользователь
 
Регистрация: 19.10.2009
Сообщений: 44
По умолчанию

Цитата:
Сообщение от triton Посмотреть сообщение
Тяжёлый случай.
А ты если такой умный, хоть бы одно слово умное сказал...
Алексей11111 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как скопировать один и тот же файл сразу в несколько папок? GvR Общие вопросы Delphi 7 08.11.2013 22:32
[Delphi] Работа с реестром несколько раз (с помощью одной переменной) zotox Помощь студентам 2 26.08.2009 00:58
Как зарегистрировать несколько раз в реестре Volkogriz Общие вопросы Delphi 5 14.01.2009 16:42
имя может встречаться несколько раз, как используя pos найти все вхождения имени в строку milton Паскаль, Turbo Pascal, PascalABC.NET 2 09.12.2008 22:34
Как написать в коде чтобы диапазон А копировался как значение в диапазон В. Dorvir Microsoft Office Excel 12 23.05.2008 22:11