Свяжите лист Excel с Access: #Num! ошибка для числовых значений в текстово-числовом гибридном столбце

Речь идет об унаследованной мной базе данных Access 2003. Вот код, который связывает электронную таблицу Excel (97-2003):

tdf.Connect = "Excel 5.0;HDR=Yes;IMEX=2;DATABASE="&strXLFileName
tdf.SourceTableName = strSourceTableName & "$"
CurrentDb.TableDefs.Append tdf

Когда я открываю связанную таблицу впоследствии, я вижу #Num! вместо числовых значений в столбце, который должен содержать как числовые, так и текстовые.

Например, в Excel:

Field1
H88
234
X65
432

Связанная таблица в Access:

Field1
H88
#Num!
X65
#Num!

Я пробовал следующее: (а) заменить Excel 5.0 на Excel 8.0, что более точно соответствует формату файлов soruce; (б) импорт с использованием DoCmd.TransferSpreadsheet вместо связывания.

Первый по-прежнему дает #Num !, в то время как импорт дает NULL.

Обновление до более поздних версий на данный момент невозможно - в коде есть ряд мест, которые используют такие вещи, как Application.FileSearch, которые требуют тщательного переписывания и тестирования.

Кто-нибудь знает, как заставить Access 2003 обращаться с "числами", как с текстом?

TIA!


person SQLCurious    schedule 04.10.2012    source источник


Ответы (1)


Измените IMEX=2 на IMEX=1, чтобы обрабатывать все значения как текст.

Дополнительную информацию о IMEX можно найти на странице Строки подключения для Excel 2007.

person HansUp    schedule 04.10.2012