|
Экспорт данных в Excel - текст преобразуется в десятичную дробь
|
|||
---|---|---|---|
#18+
Добрый день, уважаемые коллеги. Вопрос, вероятно, не совсем по теме раздела, но, вероятно, многие решали проблемы с импортом данных в Excel, в т.ч. мою. Суть проблемы. При импорте из списка Access в лист Excel текстовая строка вида "2018.400" автоматом преобразуется в дробь "2018,400" и усекается до "2018,4". А это текст - регистрационный номер письма. Смена системного разделителя с "," на "." ничего не дает - в Excel'e результат выглядит как "2018.4". Слышал, что можно настраивать разделитель в самом Excel'e, но это плохой вариант - у приложения много пользователей, желательно обойтись без изменения настроек. На рисунке показано, как выглядит одно и то же в Access и Excel (сверху) и как выглядит код экспорта в Excel (снизу). Не подскажете, как победить проблему? ---- И второй вопрос. Значит, при переносе дат Excel отчего-то не понимает, что текст вида "03.05.2018" - это дата. В результате для столбцов с датами я после экспорта делаю в Excel автозамену "." на "-" для всего столбца. Это работает, но если в столбце ни одного значения, появляется сообщение об ошибке замены + возникают проблемы с заголовком (см. на рисунке заголовок второго столбца в Excel). Может быть, есть менее тупой способ экспорта дат, без автозамен? ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2018, 22:43 |
|
Экспорт данных в Excel - текст преобразуется в десятичную дробь
|
|||
---|---|---|---|
#18+
JohnSparrow, просто для каждого поля надо прямо и конкретно указать тип данных. Например, есть таблица. Из неё запросом берутся данные. И уже из запроса идёт импорт в Ексель. Так вот в этом запросе указываете нужный тип. Например, CStr ([ВашеТекстовоеПоле]) Во втором случае CDate([ВашеПолеДаты]) Забейте в поиск "Функции преобразования типа" ... |
|||
:
Нравится:
Не нравится:
|
|||
11.06.2018, 23:42 |
|
Экспорт данных в Excel - текст преобразуется в десятичную дробь
|
|||
---|---|---|---|
#18+
JohnSparrow, ячейки(можно создать объект Range) форматировать, апостроф перед переменной (для строковой переменной) xl.cells(row,colmn)="'" & list.Column(col,rec) Также есть способ "в лоб" - создается соответствующе отформатированый шаблон... p.s.( есть классная функция созданная Крук Валерием Николаевичем в 2003 году, http://am.rusimport.ru/MsAccess/topic.aspx?ID=578 по экспорту из отчета, т.е. создается отчет с форматированием, потом применяется эта функция.) ... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2018, 00:13 |
|
|
start [/forum/topic.php?fid=45&fpage=49&tid=1611375]: |
0ms |
get settings: |
10ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
39ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
41ms |
get tp. blocked users: |
2ms |
others: | 274ms |
total: | 400ms |
0 / 0 |