Гость
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Заполнение листа данными vba массивом / 7 сообщений из 7, страница 1 из 1
04.06.2016, 03:46
    #39250550
Oraz1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Всем привет. ребят, вопрос такой. Есть ли возможность с помощью vba заносить данные в лист с помощью массива?
Сейчас работает вот такой код. Но в целях производительности хочу переделать, так как после каждой строки отладчик обрабатывает функцию (написанную), которая вытягивает данные с интернета, а это не очень быстро. Вот думаю если разом все записать, будет шикарно.

Код: vbnet
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
reestr = Sheets("КП (2)").Cells(1, 2)
    Sheets("Реестр").Cells(reestr, 1) = Date
    Sheets("Реестр").Cells(reestr, 2) = Time()
    Sheets("Реестр").Cells(reestr, 3) = naimenovanie
    Sheets("Реестр").Cells(reestr, 4) = Mail.From
    Sheets("Реестр").Cells(reestr, 5) = Mail.To
    Sheets("Реестр").Cells(reestr, 6) = Mail.CC
    Sheets("Реестр").Cells(reestr, 7) = Mail.Subject
    Sheets("Реестр").Cells(reestr, 8) = summa
    Sheets("Реестр").Cells(reestr, 9) = srok2
    Sheets("Реестр").Cells(reestr, 10) = pobeda
    Sheets("Реестр").Cells(reestr, 11) = inn
    Sheets("Реестр").Cells(reestr, 12) = region
    Sheets("Реестр").Cells(reestr, 13) = telefon
    Sheets("Реестр").Cells(reestr, 14) = data_pr
    Sheets("Реестр").Cells(reestr, 15) = Mail.HTMLBody
   Sheets("КП (2)").Cells(1, 2) = reestr + 1


Спасибо.
...
Рейтинг: 0 / 0
04.06.2016, 10:20
    #39250575
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Код: vbnet
1.
Range(Cells(1,1),Cells(1,3))=Array(4,5,6)
...
Рейтинг: 0 / 0
04.06.2016, 11:33
    #39250589
Oraz1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Shocker.Pro,

Спасибо. моментально работает.
...
Рейтинг: 0 / 0
04.06.2016, 11:49
    #39250590
Oraz1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Shocker.Pro,
А если с другого листа макрос запускать он ошибку ведает.
...
Рейтинг: 0 / 0
04.06.2016, 11:52
    #39250592
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
так укажите нужный лист
Код: vbnet
1.
Sheets("Реестр").Range(Sheets("Реестр").Cells(1,1),Sheets("Реестр").Cells(1,3))=Array(4,5,6)
...
Рейтинг: 0 / 0
04.06.2016, 11:54
    #39250593
Oraz1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Код: vbnet
1.
2.
3.
ii = Sheets("Расчёт").Cells(18, 38)
    Sheets("Реестр").Range(Cells(ii, 1), Cells(ii, 15)) = Array(Date, Time(), naimenovanie, Mail.From, Mail.To, Mail.CC, Mail.Subject, summa, srok2, pobeda, inn, region, telefon, data_pr, Mail.HTMLBody)
    Sheets("Расчет").Cells(18, 38) = ii + 1


Вот как сделал. При запуске макроса с листа расчёт выдает ошибку. Как можно исправить?
...
Рейтинг: 0 / 0
04.06.2016, 11:56
    #39250595
Oraz1
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение листа данными vba массивом
Shocker.Pro,

Всё, всё шикарно. Благодарю.
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Заполнение листа данными vba массивом / 7 сообщений из 7, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]