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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 13.12.2016, 14:13   #1
ovt256
Форумчанин
 
Регистрация: 01.04.2011
Сообщений: 226
По умолчанию Добавление в таблицу строк из массива

Добрый день, Форумчане!

На листе есть табличка с шапкой, отформатирована, как таблица с количеством строк Nrow и числом колонок M.
Есть заполненный динамический двумерный массив Tmp, число столбцов которого соответствует числу колонок таблички M, а количество строк = N.
Необходимо добавить в конец таблички данные из массива с сохранением табличного форматирования.
Делаю так:
Код:
    Nrow = Sheets("Лист1").Range("A2").CurrentRegion.Rows.Count
    Sheets("Лист1").Range("A2").Resize(N + Nrow, M).Offset(Nrow - 1, 0) = Tmp
В результате данные из массива добавляются в табличку, но после них добавляется еще столько же строк, сколько было в исходной табличке, заполненных #Н/Д.

Кто-нибудь может подсказать, что я делаю не так?
Вложения
Тип файла: rar Test.rar (12.7 Кб, 11 просмотров)
Если руки золотые, то не важно, откуда они растут.
ovt256 вне форума Ответить с цитированием
Старый 13.12.2016, 14:48   #2
IgorGO
Новичок
СтарожилДжуниор
 
Аватар для IgorGO
 
Регистрация: 05.02.2008
Сообщений: 9,487
По умолчанию

Код:
    Sheets("Лист1").Cells(nrow + 1, 1).Resize(N, M).Value = Tmp
Программисты - это люди, решающие проблемы, о существовании которых Вы не подозревали, методами, которых Вы не понимаете
IgorGO вне форума Ответить с цитированием
Старый 13.12.2016, 14:55   #3
Aleksandr H.
2 the Nation Glory
Старожил
 
Аватар для Aleksandr H.
 
Регистрация: 27.05.2014
Сообщений: 3,289
По умолчанию

Код:
Sheets("Лист1").Range("A2").Offset(Nrow - 1, 0).Resize(N, M) = Tmp
Кто умер, но не забыт, тот бессмертен.
Лао-Цзы.
Aleksandr H. вне форума Ответить с цитированием
Старый 13.12.2016, 15:26   #4
ovt256
Форумчанин
 
Регистрация: 01.04.2011
Сообщений: 226
По умолчанию

Игорь, Александр!

Низкий поклон! Оба варианта работают, как надо!
Либо указываю следующую за табличкой ячейку, либо указываю смещение.
Но в любом случае Resize только на добавляемые строки.
Я думал, что Resize работает иначе.

Спасибо за помощь!
Если руки золотые, то не важно, откуда они растут.
ovt256 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
JS, добавление строк в HTML таблицу mashinin JavaScript, Ajax 4 08.04.2016 12:44
Добавление строк в таблицу UbeiBobra Microsoft Office Excel 13 26.01.2016 14:46
Добавление строк в таблицу из clipboard tevadim Microsoft Office Excel 6 06.12.2012 14:19
Добавление строк в таблицу. z21231904 Microsoft Office Word 2 17.06.2010 22:52
Добавление строк в таблицу с вставкой в них текста и чередованием фона строк Centurion2xx6 Microsoft Office Word 9 30.03.2010 11:00