powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Экспорт в Excel
5 сообщений из 5, страница 1 из 1
Экспорт в Excel
    #40037684
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Загружаю данные в Excel, все норм, одна проблема:
символьное поле длиной 20 (номенклатурный код) состоит из 20 цифр, а Excel воспринимает как число и преобразует в экспоненциальный вид:
3,10096E+13
3,10122E+13
3,10236E+13

Кто-нить знает как с этим бороться?
Варианта загрузки 2:
1-й загружаю текстовый файл
2-й загружаю массив
...
Рейтинг: 0 / 0
Экспорт в Excel
    #40037693
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Попробуй колонку пошире раздвинуть, чтобы код влазил.

Я через буфер обмена передаю, такой проблемы нет.
Код: sql
1.
2.
		_cliptext = lcText
		.ActiveSheet.PasteSpecial(1)


lcText с разделителем табуляций (chr(9)) и chr(13) для перевода строки
...
Рейтинг: 0 / 0
Экспорт в Excel
    #40037699
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,
_cliptext - одна ячейка, строка иди таблица?
Если строка или таблица - какие разделители?
Какой макс объем таблицы?
...
Рейтинг: 0 / 0
Экспорт в Excel
    #40037705
Dima T
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
glamis
Dima T,
_cliptext - одна ячейка, строка иди таблица?
Если строка или таблица - какие разделители?
Какой макс объем таблицы?

Один лист экселя.
Разделитель табуляция, уже писал.
Макс. размер 16 Мб.

Наврал, заглянул в исходники, главное перед загрузкой отформатировать столбец. Через буфер обмена не обязательно передавать.
Вот рабочий пример
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
lcText = 'Код' + chr(9) + 'Наименование' + chr(13)
lcText = lcText + '1234567890123' + chr(9) + 'Штрихкод' + chr(13)
lcText = lcText + '12345678901234567890' + chr(9) + 'Длинный код' + chr(13)

loEx = Newobject("Excel.Sheet")
with loEx.Parent
	.DisplayAlerts = .F.
	.ActiveSheet.Columns(1).NumberFormat = "@"
	_cliptext = lcText
	.ActiveSheet.PasteSpecial(1)
	.Visible = .T.
endwith
MessageBox('Готово')
...
Рейтинг: 0 / 0
Экспорт в Excel
    #40037722
glamis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dima T,
Да, все получилось.
Только для таблиц быстрее наверно так:
Код: vbnet
1.
2.
3.
4.
5.
Copy to array mayarray
With .ActiveSheet
    .range(.cells(1,1), .cells(alen(myarray,1), alen(myarray,2)).value=;
         execscript('lpara myarray'+cr+'return @&myarray', 'myarray')
Endw
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / FoxPro, Visual FoxPro [игнор отключен] [закрыт для гостей] / Экспорт в Excel
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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