Гость
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access / 11 сообщений из 11, страница 1 из 1
29.09.2017, 11:30
    #39528170
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
Всем привет! Мне нужно импортировать таблицу эксель в аксесс.
делаю это следующей командой

Код: sql
1.
2.
3.
4.
5.
6.
SELECT * INTO newtable23
FROM (SELECT CCD_0D_02,CCD_02_01,CCD_02_02, CCD_02_03, CCD_02_04, CCD_02_05, CCD_02_06, CCD_02_07, CCD_02_08, CCD_02_09, CCD_02_10,
CCD_08_01, CCD_08_02, CCD_08_03, CCD_08_04, CCD_08_05, CCD_08_06, CCD_08_07, CCD_08_08, CCD_08_09, CCD_08_10, 
CCD_09_01, CCD_09_02, CCD_09_03 
FROM 2014
WHERE CCD_33_01_ between "7304000000" and "7306999999")



Этот код работает, но в созданной таблице access в некоторых столбцах меняется тип данных с числового на текстовый. Подскажите, как можно сохранить исходное форматирование экселя?
...
Рейтинг: 0 / 0
29.09.2017, 11:32
    #39528173
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
";" с обратной стороны скобки.
...
Рейтинг: 0 / 0
29.09.2017, 12:04
    #39528211
ПЕНСИОНЕРКА
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
kudimстолбцах меняется тип данных с числового на текстовый.
значит в этих столбцах в екселе текстовый тип данных или #НДД в первых 20 строках
...
Рейтинг: 0 / 0
29.09.2017, 14:53
    #39528400
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
ПЕНСИОНЕРКА,
вы правы, перепроверил, и у меня в нескольких соединяемых документах есть пустые ячейки
в столбце, в котором в дальнейшем само по себе меняется форматирование.
После заполнения этих ячеек нулями, проблема вроде как исчезла. Однако, нет ли способа
сохранить исходное форматирование несмотря на путаницу в столбцах экселя? То есть чтобы не приходилось
каждый раз перепроверять эксель на наличие ошибок?
...
Рейтинг: 0 / 0
29.09.2017, 15:51
    #39528468
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
kudimнет ли способа сохранить исходное форматирование несмотря на путаницу в столбцах экселя? То есть чтобы не приходилось каждый раз перепроверять эксель на наличие ошибок?
Если ячейки с числами или пустые, то в запросе можно явно преобразовать тип поля.
Например вместо поля "CCD_02_01" указать
CDbl(NZ([CCD_02_01]),0)) As [CCD_02_01]
или
CDbl(IIF(IsNull([CCD_02_01]),0,[CCD_02_01])) As [CCD_02_01]
Вместо CDbl можно применить CCur, CLng и т.п.
...
Рейтинг: 0 / 0
30.09.2017, 00:20
    #39528685
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
kudim,
вырежи кусок из экселя и кусок с таблицей из базы данных и выкини сюда на форум, тогда можно покумекать и реальное решение придумать, чтоб не гадать почему у тебя не получается. иногда банальные вещи бывают: надо экспортировать таблицу эксель в csv формат, а потом импорт в бд может сработать.
...
Рейтинг: 0 / 0
02.10.2017, 09:00
    #39529168
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
Пафосный фермер,

выкладываю вам проблемную строку в формате экселя. В ней, как писали в предыдущих сообщениях, есть пустые строки вначале (числа начинаются только с 454 строки). Поэтому числовой формат ячейки в экселе аксессом воспринимается как текст.

Понятно, что проще всего заполнить их нулями, однако это неудобно делать каждый раз.

Код предложенный Анатолием
Код: vbnet
1.
CDbl(NZ([CCD_02_01]),0)) As [CCD_02_01]

действительно помогает сохранить исходное форматирование числовых ячеек, однако работает только на одном компьютере. На другом почему-то возникает ошибка "псевдоним
CCD_02_01 (это название столбца) привёл к возникновению циклической ссылки".
Так что сейчас я пытаюсь понять что именно делает эта строка кода и по какой причине возникает ошибка. Буду рад вашей помощи)
...
Рейтинг: 0 / 0
02.10.2017, 09:07
    #39529173
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
kudimCCD_02_01 (это название столбца) привёл к возникновению циклической ссылки
Добавьте имя таблицы перед именем колонки и ошибка исчезнет. Ну или переименуйте вычисляемую колонку.
...
Рейтинг: 0 / 0
02.10.2017, 09:13
    #39529177
MrShin
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
А лучше всего импортируйте данные сначала в существующую временную таблицу со всеми полями типа Текст и именами колонок, например F1, F2,...F100, а затем запросом уже из этой таблицы пишите куда нужно со всей необходимой конвертацией. Так бедет надежнее. Если будут встречаться "плохие" данные (а на это нужно рассчитывать!), которые не получается конвертировать, сможете выдать корректную диагностику пользователю вместо невнятной ошибки или молчаливого пропуска ошибочных данных.
...
Рейтинг: 0 / 0
02.10.2017, 09:57
    #39529208
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
MrShin,
У меня экселевские файлы привязаны к аксессу, то есть там только одна страница ( как на скриншоте ) Пробую записать следующим образом, но выдает ошибки синтаксиса.
Код: sql
1.
CDbl(IIF(IsNull([(SELECT[вес нетто (тн)]FROM [ИП 2015])),0,(SELECT[вес нетто (тн)]FROM [ИП 2015]) As (SELECT[вес нетто (тн)]FROM [ИП 2015])
...
Рейтинг: 0 / 0
02.10.2017, 09:58
    #39529209
kudim
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access
MrShin,

скриншот
...
Рейтинг: 0 / 0
Форумы / Microsoft Access [игнор отключен] [закрыт для гостей] / Сохранение исходного форматирования ячеек при импорте таблицы из Excel в Access / 11 сообщений из 11, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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