Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Заполнение массива в диапазон / 10 сообщений из 10, страница 1 из 1
09.04.2012, 16:43
    #37745437
Галямов Ильдар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Sub test()
Dim start, zapolnenie, finish As Date
Dim base(100000), dublicat(100000) As Integer
Dim x As Variant
Randomize
start = Time
For x = 1 To 100000
base(x) = Rnd
Next x
zapolnenie = Time
For x = 1 To 100000
dublicat(x) = base(x)
Next x
finish = Time
MsgBox ("Начало = " & start)
MsgBox ("Заполнено = " & zapolnenie)
MsgBox ("Продублировано = " & finish)

Range("g1").Resize(UBound(x, 1), UBound(x, 2)).Value = base

End Sub



Здесь - Range("g1").Resize(UBound(x, 1), UBound(x, 2)).Value = base должен заносить массив в диапазон, но Excel показывает ошибку, что я не так делаю?
...
Рейтинг: 0 / 0
09.04.2012, 16:54
    #37745461
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Ильдар, почитай уже как оформлять код и выделять строки в нем
...
Рейтинг: 0 / 0
09.04.2012, 16:56
    #37745465
Галямов Ильдар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Извиняюсь, буду иметь ввиду, но в чем ошибка в коде?
...
Рейтинг: 0 / 0
09.04.2012, 16:57
    #37745466
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Галямов Ильдарчто я не так делаю?1) Не пишешь текст ошибки, приходится запускать код, чтобы ее узнать
2) неправильно используешь UBound - где, собственно, массив-то?
...
Рейтинг: 0 / 0
09.04.2012, 16:58
    #37745471
R Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Галямов Ильдар, а откуда у Вас двухмерный массив появился?
Х это вообще переменная и ни как не массив
Массив был горизонтальный а вы его хотите вертикальным сделать ?
тогда сразу и преобразовывайте в цикле в вертикальный массив, можно было и транспонировать, но есть ограничение в 65536 строк массива.
можно и функцию свою для траспонирования написать.
...
Рейтинг: 0 / 0
09.04.2012, 17:01
    #37745483
Галямов Ильдар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
А как мне отразить одномерный массив base () в диапазон ячеек?
...
Рейтинг: 0 / 0
09.04.2012, 17:22
    #37745528
Shocker.Pro
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Код: vbnet
1.
Dim start, zapolnenie, finish As Date

при таком объявлении тип Date будет иметь только переменная finish
...
Рейтинг: 0 / 0
09.04.2012, 17:33
    #37745550
R Dmitry
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Галямов ИльдарА как мне отразить одномерный массив base () в диапазон ячеек?

Код: vbnet
1.
2.
3.
4.
5.
6.
Sub ggg()
a = Array(1, 2, 3)
[a1].Resize(3, 1).Value = a
[e1].Resize(1, 3).Value = a
[a5].Resize(3, 1).Value = Application.Transpose(a)
End Sub
...
Рейтинг: 0 / 0
12.04.2012, 13:44
    #37750458
AndreTM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
Плюс, добавлю, как именно "типа правильно" использовать 12310480 массив в коде, хоть для VB, хоть для VBA... Это если не дозрели до классов...
...
Рейтинг: 0 / 0
13.04.2012, 08:49
    #37751672
Галямов Ильдар
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Заполнение массива в диапазон
AndreTM, до классов и коллекций еще не "дорос" ))
...
Рейтинг: 0 / 0
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / Заполнение массива в диапазон / 10 сообщений из 10, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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