Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в Excel передать больше 65535 элементов. / 12 сообщений из 12, страница 1 из 1
31.01.2008, 18:30
    #35101835
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Складывается впечатление, что существует ограничение на колличество элементов, передаваемых за один раз из массива VB в Excel.

Так, например

Код:
1.
 .Range("A2").Resize(UBound(BufferIZM)).Value = iXLApp.Transpose(BufferIZM)


если одномерный BufferIZM (объявлен как Dim BufferIZM() As Single) содержит 65536 элементов я получаю сообщение: "Run-Time Error 13: Type Mismatch".

Или если
Код:
1.
With .Range("A2:B2").Resize(iCount)


iCount имеет значение 65536, то я получаю сообщение: "Run-Time Error 1004: Application defined or object defined error".

Как обойти это ограничение, если оно действительно существует.
...
Рейтинг: 0 / 0
31.01.2008, 18:38
    #35101856
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
А версия Excell какая??? Что-то мне подсказывает что на одном листе книге не может быть больше 65535 строк... Правда я ни разу не работал с 2007 офисом может там это ограничение и сняли.

С уважением, Николай.
...
Рейтинг: 0 / 0
31.01.2008, 18:54
    #35101890
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
> Правда я ни разу не работал с 2007 офисом может там это ограничение и
> сняли.
>
там сняли ;-)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
31.01.2008, 19:52
    #35102041
DOSS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Кто будет читать 65536 строк.
Уж лучше в DBF
...
Рейтинг: 0 / 0
31.01.2008, 22:50
    #35102218
VladConn
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Вы хотите увеличить ранг на такое количество (там одна "л") строк, которое вашей версией Excel не поддерживается на одном листе. Вот и все. Как обойти это ограничение? Перейти на более новую версию Excel, где может быть такого ограничения нет. Другой вариант, если подходите к такому лимиту, продолжайте на следующем листе.
...
Рейтинг: 0 / 0
01.02.2008, 07:35
    #35102424
klen_
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Игорь Горбонос
> Правда я ни разу не работал с 2007 офисом может там это ограничение и
> сняли.
>
там сняли ;-)

Posted via ActualForum NNTP Server 1.4увеличили до милиона
с уважением Тёска
...
Рейтинг: 0 / 0
01.02.2008, 10:56
    #35102896
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
gjghjcА версия Excell какая??? Что-то мне подсказывает что на одном листе книге не может быть больше 65535 строк... Правда я ни разу не работал с 2007 офисом может там это ограничение и сняли.

С уважением, Николай.

Была и 2003 и 97. 2007 нет и не очень хочется ставить. Не нравятся мне навороченные продукты от Билла Гей - ТСя.
...
Рейтинг: 0 / 0
01.02.2008, 11:00
    #35102906
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
VladConnВы хотите увеличить ранг на такое количество (там одна "л") строк, которое вашей версией Excel не поддерживается на одном листе. Вот и все. Как обойти это ограничение? Перейти на более новую версию Excel, где может быть такого ограничения нет. Другой вариант, если подходите к такому лимиту, продолжайте на следующем листе.

Все понял. Ограничение действительно есть.

Но ради интереса можете поэкпериментировать. Бере стары 97 Excel. Создаем txt файл с 1 млн значений и пихаем его в Excel. Все прокатывает на ура!

Т.е. это просто ограничение на передачу массива за один раз.
...
Рейтинг: 0 / 0
01.02.2008, 11:14
    #35102961
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Ну тогда переделывай с учетом размера данных не влазящих на один или два или
N-листов.
У меня такие макросы года три работали нормально, а с месяц назад данные
перестали влазить на один лист - переделал на многолистовость :)

Заодно проверил насколько хватит многолистовости, получилось при заполнении
листа данными(без формул и ссылок, просто цифры и текст) из 27 столбцов и на
каждом листе не заполненно только по 150 строк у меня получилось 19 листов,
дальше ексель перестал реагировать на любые попытки сделать что нибудь с
данными :-) ни формулу поставить ни лист удалить, ничего не пишет, но ничего
и не делает :-)

Работало все в терминальной сессии, и под Ексель отожрало 250 Мб памяти,
маловато, может, правда, админы ограничения какие на сессию поставили, не
знаю, не выяснял т.к. думаю года на три снова хватит, а там видно будет :-)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
01.02.2008, 11:19
    #35102983
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
> Но ради интереса можете поэкпериментировать. Бере стары 97 Excel.
> Создаем txt файл с 1 млн значений и пихаем его в Excel. Все прокатывает на
> ура!

На ура ли, или вливаются только 65535 записей, а остальные обрезаются???
На 97 не пробовал, но неоднократно пытался проверить на 2000, ХР, 2003,
результат только 65535 записей о чем честно пердупреждается заранее и
поигратся настройками импорта нельзя, т.к. там счетчик только до 32767 :(
приходилось идти другим путём :-)

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
01.02.2008, 12:08
    #35103220
Dimon111
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
Вы правы, коллега! Сейчас попробовал вставить в 2003-й 65637 строк прямо в Excel. Больше 65636 не поместилось.
...
Рейтинг: 0 / 0
01.02.2008, 15:20
    #35104114
gjghjc
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Как в Excel передать больше 65535 элементов.
И столбцов больше чем 255 не сделаешь :(

С уважением, Николай.
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Как в Excel передать больше 65535 элементов. / 12 сообщений из 12, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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