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

  1. создайте файл подключения к данным офиса, который ссылается на файл экспорта в Excel.

DBQ =\myfileserver\01_Team_Weekly\Raw\Raw.xlsx; DefaultDir =\myfileserver\01_Team_Weekly\Raw\; Driver = {Драйвер Microsoft Excel (* .xls, * .xlsx, * .xlsm, * .xlsb)}; DriverId = 1046; FIL = excel 12.0; MaxBufferSize = 2048; MaxScanRows = 8; PageTimeout = 5; ReadOnly = 1; SafeTransactions = 0; Потоки = 3; UID = admin; UserCommitSync = Yes; ВЫБЕРИТЕ * ИЗ \\myfileserver\01_Team_Weekly\Raw\Raw.xlsx . general_report$

  1. затем я импортирую внешние данные через функцию подключения к данным Excel.

Проблема в том, что «я обнаружил, что импортированные данные имеют ограничение 255 символов в одной ячейке»

Есть ли способ изменить ограничение до 255 символов? Я не уверен, что проблема вызвана функцией "Подключение к данным Office" или самим Excel.

сначала спасибо за помощь.

2 ответа2

1

Основной причиной этой проблемы является тип поля CSV-файла. Источник Jet 4.0LEDB будет угадывать тип данных поля csv с первыми 8 строками. Поэтому, если все первые 8 строк представляют собой данные длиной менее 255 символов, соответствующий столбец будет обрабатываться как строка - строка в кодировке Юникод, длина 255 (DT_WSTR)(http://msdn.microsoft.com/en-us/library/ms141683. aspx).

Обходной путь: 1. поместите несколько фиктивных данных в первую строку с длиной данных более 255. или 2. Обновление регистра ==> http://support.microsoft.com/kb/281517

Кстати, нет ли способа определить тип данных полей CSV?

0

Экспортируйте файл в формате CSV, затем откройте его в формате Excel для создания отчетов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .