В Access 2007 Экспорт CSV:Отключить научную Нотацию
-
05-09-2019 - |
Вопрос
При экспорте CSV из Access 2007 он автоматически преобразует десятичные дроби в научную систему счисления.
К сожалению, инструмент, который их получает, обрабатывает эти поля как текст и отображает их как есть.
Экспортируемые значения взяты из запроса, выполняемого к некоторым связанным таблицам Excel, и они идеально отображаются в представлении запроса.
Есть ли какой-нибудь способ отключить автоматическое преобразование в научную нотацию?
То есть.если в запросе он отображается как 0.007, то в выходном csv он будет отображаться как 0.007, а не как 7E3?
Примечание:Я вынужден использовать Excel и Access для этого.Как бы мне ни хотелось переключиться на SQL Server, моя жена была бы недовольна, если бы я поместил его на ее рабочий ноутбук!
Решение
Вы могли бы написать небольшой объем кода VBA в access для запроса данных из связанной таблицы или Access query и записать их в текстовый файл, создав таким образом свой собственный файл .CSV и отказавшись от "Мастера".Мне никогда особо не нравился Access' export'wizard, и я просто создал файлы сам.
Другие советы
У вас есть пара вариантов:
вы можете использовать
Format()
функция непосредственно в вашем запросе, чтобы принудительно отформатировать данные в оскорбительных столбцах определенным образом, например:SELECT ID, Format([Price],"standard") as Pricing FROM ORDERS;
вы можете написать свою собственную процедуру экспорта CSV в VBA.
Недавно я опубликовал один из них в качестве ответа на этот вопрос.
Вы можете легко изменить код, чтобы определенным образом форматировать числовые типы.
Если вы не знаете как, дайте мне знать, и я изменю код и опубликую его здесь.