Проблема в том, что в Excel разрывы строк используют Char(10)
, но в Access они используют Char(13) & Char(10)
.Таким образом, когда вы импортируете в Access из Excel, все разрывы строк в Excel находятся на одной и той же строке в Access.
У меня импорт выполняется автоматически с помощью нажатия кнопки, так что некоторые данные можно очиститьдо ввода.Я хочу добавить это к сенсибилизации, но у меня возникли проблемы с этим:
' Remove blank cells that aren't blank (i.e., pasting values of formulas with no value)
xl.ActiveSheet.UsedRange.Select
xl.Selection.Value = xl.Selection.Value
' Replace line breaks and carriage returns with something Access recognizes
xl.Selection.Value = Replace(xl.Selection.Value, Chr(10), Chr(13) + Chr(10))
' OR this....
xl.ActiveSheet.Selection.Replace _
What:=Chr(10), Replacement:=Chr(13) + Chr(10), _
SearchOrder:=xlByColumns, MatchCase:=False
Первый подход генерирует:
Run-time error '13': Type mismatch
Второй подход генерирует:
Run-time error '438': Object doesn't support this property or method
Где я здесь ошибаюсь и что может быть лучше?