|
xlsx vs ado | ☑ | ||
---|---|---|---|---|
0
Cool_Profi
23.03.18
✎
12:25
|
Есть ексель-файлик, который мне выгружают с внешнего сервиса.
Хочу его прочитать. Читаю так еБаза=Новый COMОбъект("ADODB.Connection"); СтрокаПодключения = " |Provider=Microsoft.ACE.OLEDB.12.0; |Data Source=C:\Users\cd\AppData\Local\Temp\v8_7537_12b.xlsx; |Extended Properties="Excel 12.0 XML;IMEX=1;HDR=Yes;"; " еБаза.Open(СтрокаПодключения); получаю "Произошла исключительная ситуация (Microsoft Access Database Engine): Внешняя таблица не имеет предполагаемый формат." поиск показал, что в файле что-то не так. Если этот файл открыть в екселе и пересохранить - он открывается нормально. Отсюда вопрос - что может быть не так в файле? Что сказать той стороне, чтобы поправили? |
|||
1
Kuzmich123
23.03.18
✎
12:26
|
А чего средствами платформы не читаешь?
|
|||
2
Cool_Profi
23.03.18
✎
12:32
|
(1)
табдок = Новый ТабличныйДокумент; табдок.Прочитать("C:\Users\cd\AppData\Local\Temp\v8_7537_12b.xlsx"); табДок.Показать(); Ошибка при вызове метода контекста (Прочитать): Ошибка при выполнении файловой операции У меня 8.2.19 |
|||
3
Адинэснег
23.03.18
✎
12:32
|
а чо так можно? оО
(1)(2) |
|||
4
Адинэснег
23.03.18
✎
12:34
|
Описание:
Считывает табличный документ из файла. Позволяет считывать табличный документ из файла табличного документа Microsoft Excel 97 - 2010 ( *.xls и *.xlsx) или электронной таблицы OpenOffice Calc ( *.ods). ого, как это я мимо прошел? |
|||
5
VitShvets
23.03.18
✎
12:44
|
(0) Могу предположить, там "xls", но файл с расширением "xlsx". Самому Екселю пофиг, он смотрит на содержимое, а вот адошным драйверам не нравится.
|
|||
6
Cool_Profi
23.03.18
✎
12:45
|
(5) В таком случае ексель жалуется. Тут же жалоб нет.
И да, смотрел внутрь - там зип с xml |
|||
7
karabas11
23.03.18
✎
12:49
|
(1) Есть проблемы у этого способа. Он точно также не все эксели понимает.
Платформа 8.3.10 , пробую читать некий эксель файл от внешнего контрагента. Читаю ТабДок.Прочитать() - ноль информации в результате. Неверно определяет количество листов, неверно определяет содержимое. Стоит открыть файл в экселе и пересохранить его, так сразу же 1с нормально начинает работать и корректно читать файлы эксель. Очевидно есть зависимость от программы, которая генерирует эксель файл. |
|||
8
VitShvets
23.03.18
✎
12:58
|
(6) Смотря как настроить безопасность. У меня вот не жалуется. Но вообще странно, видимо файлы создают чем-то ооочень специализированным. А COM-объектами Excel или LibreOffice если читать? У Микрософта раньше была бесплатная утилита Excel-reader или как-то так.
|
|||
9
бомболюк
23.03.18
✎
13:00
|
Файл *.xlsx, созданный 1С, драйвер Microsoft Access Database Engine(Microsoft.ACE.OLEDB.12.0) не читает. Говорит, что External table is not in the expected format.
|
|||
10
Cool_Profi
23.03.18
✎
13:01
|
(8) У меня жалуется. Уже проверил. Вот разработчики говорят, что какую-то библиотеку используют, на той стороне вебятина
Ком использовать не хочу, на сервер тянуть офис не стоит, хотя если вообще вариантов не будет - придётся пойти таким путём. |
|||
11
Cool_Profi
23.03.18
✎
13:02
|
(9) вот именно
|
|||
12
Cool_Profi
23.03.18
✎
13:04
|
Вот такой они делают OpenXMLExcel.SLExcelUtility
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |