Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Невозможно имортировать из Excel / 17 сообщений из 17, страница 1 из 1
14.04.2008, 10:26
    #35252733
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Всем привет !!!
поиск по проблемме ничего не дал, мож кто сталкивался

Кратко суть проблемы
скачиваем Excel-ый файлик из интранета и пытаемся его открыть следующим образом

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
Public Function GetDBConnectionFromExcel(sPath As String) As ADODB.Connection
On Error GoTo ProcErr
    Dim conn As ADODB.Connection
        
    Set conn = New ADODB.Connection
    With conn
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .ConnectionString = "Data Source=" & sPath & ";Extended Properties=""Excel 8.0; HDR=No; IMEX=1"""
    End With
    conn.CursorLocation = adUseClient
    conn.Open
    
    Set GetDBConnectionFromExcel = conn
    
Exit Function
ProcErr:
    PrintLogErr ("Error while open JetODBC connection to excel. " & Err.Description & " Num : " & Err.Number)
    Set GetDBConnectionFromExcel = Nothing
End Function

Но на некоторых клиентах валится с ошибкой : "External table is not in the expected format"
Где собака порылась то ?

ЗЫ. На этих же клиентах выполнить импорт невозможно через OLE-ый интерфейс.
ЗЫ2. Часть клиентов - буржуи со своими региональными настройками (китаец например)
...
Рейтинг: 0 / 0
14.04.2008, 10:40
    #35252773
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Какой FileFormat у книги ?
...
Рейтинг: 0 / 0
14.04.2008, 10:41
    #35252780
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Excel2000
...
Рейтинг: 0 / 0
14.04.2008, 10:57
    #35252826
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
MorchExcel2000
Чего чего ????
Чему равно свойство FileFormat у вашей воркбук ?
...
Рейтинг: 0 / 0
14.04.2008, 11:11
    #35252873
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-duke
Чего чего ????
Чему равно свойство FileFormat у вашей воркбук ?
А дошло ... xlWorkbookNormal (-4143)
...
Рейтинг: 0 / 0
14.04.2008, 11:14
    #35252886
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Файл, который вы скачиваете, создавался вручную или через код ?
...
Рейтинг: 0 / 0
14.04.2008, 11:16
    #35252893
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
HDR=NO
Вы осознанно выставили этот параметр ?

...
Рейтинг: 0 / 0
14.04.2008, 11:17
    #35252902
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-dukeФайл, который вы скачиваете, создавался вручную или через код ?

Без понятия. Представлен AsIs. Но обновляют его вручную (это точно). Да совсем забыл, в нем есть пару макросов никак не связанных с данными (они для облегчения заполнения данных вроде, неважно вообщем на открытие книги они не повешены)
...
Рейтинг: 0 / 0
14.04.2008, 11:19
    #35252907
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Создайте его заново или выполните команду «Сохранить как ... » в нужном вам формате.
И мой вопрос про HDR в силе.
Макросы убрать.
...
Рейтинг: 0 / 0
14.04.2008, 11:19
    #35252908
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-duke HDR=NO
Вы осознанно выставили этот параметр ?


Да, нужно было чтобы у каждого столбца был текстовый тип данных. Пришлось в реестре править чтоб драйвер определял тип на основе сканирования первой(одной) строки. Ну так как там хедеры то получал что надо.
...
Рейтинг: 0 / 0
14.04.2008, 11:21
    #35252913
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-dukeСоздайте его заново или выполните команду «Сохранить как ... » в нужном вам формате.
И мой вопрос про HDR в силе.
Макросы убрать.

HDR ответил уже :)
А вот пересохранить и убрать макросы не в моей силе. Я могу только скачивать его с сайта интранетовского, а вот обновлять прав нет. Да и требовать этого не могу ибо заказчег его так хочет :(
...
Рейтинг: 0 / 0
14.04.2008, 11:23
    #35252916
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Morch big-duke HDR=NO
Вы осознанно выставили этот параметр ?

Да, нужно было чтобы у каждого столбца был текстовый тип данных.
Внимательно читайте.
MSDNПо умолчанию в книге Excel первая строка диапазона считается строкой заголовков (имен полей). Если первая строка не содержит заголовков, необходимо в расширенные свойства строки подключения включить инструкцию HDR=NO. В этом случае поставщик данных Jet OLE DB назначает имена полей автоматически (F1 соответствует первому полю, F2 — второму и так далее).

Про тип данных
MSDN Поставщик данных OLE DB определяет тип данных в столбце на основании значений в восьми строках. Чтобы изменить количество просматриваемых строк, необходимо включить в расширенные свойства строки подключения параметр MAXSCANROWS со значением в диапазоне от 1 до 16.

...
Рейтинг: 0 / 0
14.04.2008, 11:25
    #35252921
big-duke
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Morch big-dukeСоздайте его заново или выполните команду «Сохранить как ... » в нужном вам формате.
И мой вопрос про HDR в силе.
Макросы убрать.

HDR ответил уже :)
А вот пересохранить и убрать макросы не в моей силе. Я могу только скачивать его с сайта интранетовского, а вот обновлять прав нет. Да и требовать этого не могу ибо заказчег его так хочет :(
Про HDR и я вам ответил. Читайте.
Попробуйте все же один раз пересохранить файл. Для проверки.
И попробуйте добавить в строку коннекта Extended Properties=HTML Import;
...
Рейтинг: 0 / 0
14.04.2008, 11:30
    #35252936
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-duke Morch big-duke HDR=NO
Вы осознанно выставили этот параметр ?

Да, нужно было чтобы у каждого столбца был текстовый тип данных.
Внимательно читайте.
MSDNПо умолчанию в книге Excel первая строка диапазона считается строкой заголовков (имен полей). Если первая строка не содержит заголовков, необходимо в расширенные свойства строки подключения включить инструкцию HDR=NO. В этом случае поставщик данных Jet OLE DB назначает имена полей автоматически (F1 соответствует первому полю, F2 — второму и так далее).

Про тип данных
MSDN Поставщик данных OLE DB определяет тип данных в столбце на основании значений в восьми строках. Чтобы изменить количество просматриваемых строк, необходимо включить в расширенные свойства строки подключения параметр MAXSCANROWS со значением в диапазоне от 1 до 16.


MAXSCANROWS не работает в 4-ом Jet-е (это выкопал в KB на микрософтовом сайте и там же workaround приведен , типа меняйте реестр и только так количество сканируемых строк регулируется). То что я сделал - меня вполне устраивает. При импорте просто пропускаем первую строку и все в ажуре :)
...
Рейтинг: 0 / 0
14.04.2008, 11:33
    #35252941
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
big-duke
Про HDR и я вам ответил. Читайте.
Попробуйте все же один раз пересохранить файл. Для проверки.
И попробуйте добавить в строку коннекта Extended Properties=HTML Import;
Пересохранение невозможно. На сбойных клиентах через ОЛЕ-ый интерфейс даже количество листов несовпадает с оригиналом и ваще все косячит. Но если тупо через браузер скачать файл и открыть его, то все нормально отображается.

Насчет добавить проперти - это идея буду пробовать. Но ХТМЛ-ем там даже не пахнет.
...
Рейтинг: 0 / 0
14.04.2008, 12:28
    #35253131
Игорь Горбонос
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
> Автор: Morch
> Пересохранение невозможно. На сбойных клиентах через ОЛЕ-ый интерфейс
> даже количество листов несовпадает с оригиналом и ваще все косячит. Но
> если тупо через браузер скачать файл и открыть его, то все нормально
> отображается.

Может при закачке файл бьётся? Или Сбойные клиенты понятие стабильное и
постоянное в плане неполадок у одних и тех-же товарищей?

Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
14.04.2008, 12:36
    #35253151
Morch
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Невозможно имортировать из Excel
Игорь Горбонос
Может при закачке файл бьётся? Или Сбойные клиенты понятие стабильное и
постоянное в плане неполадок у одних и тех-же товарищей?
Posted via ActualForum NNTP Server 1.4
Сбойные клиенты понятие стабильное. Ну я б понял если б бился через раз, но нет. Хотя проверить надо насколько корректно сливается (маловероятно, у остальных из этой же сетки все нормуль ). Единственно насколько региональные настройки здесь важны (ну или версии MUI винды) ?
...
Рейтинг: 0 / 0
Форумы / Visual Basic [игнор отключен] [закрыт для гостей] / Невозможно имортировать из Excel / 17 сообщений из 17, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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