Ошибка возможно неверно указан номер листа книги excel как исправить

Получить 200 видеоуроков по 1С бесплатно:

  • Бесплатный видео самоучитель по 1С Бухгалтерии 8.2 и 8.3;
  • Самоучитель по новой версии 1С ЗУП 3.0;
  • Хороший курс по 1С Управление торговлей 11.

Елена Судницына 16.10.2012
Здравствуйте, Елена!
Сегодняшнюю часть модуля 5 по загрузке данных в 1С из Экселя просмотрела, очень хотела проделать все сама, но при «Загрузке данных из табличного документа» при выборе файла «Сотрудники» программа мне пишет «Ошибка. Возможно неверно указан номер листа книги Excel.» (работаю в учебной базе). Обидно.

Елена Грянина
А просто файл XLS можете открыть? Если можете – скопируйте тогда все данные из екселя в буфер, а потом вставьте их в обработку на закладку Табличный документ.

Елена Судницына
Спасибо огромное, Елена!
Воспользовалась вашими рекомендациями, и всё получилось! У меня дома стоит Exсel Starter 2010. Возможно, проблемы связаны с ограниченной функциональностью этой программы.

Вам будет интересно

Дата публикации: Апр 19, 2013

Поставьте вашу оценку этой статье:

Загрузка…

Перейти к контенту

Я
   ac13

08.08.18 — 13:08

Попытка

        Excel = Новый COMОбъект(«Excel.Application»);

        Excel.WorkBooks.Open(ИмяФайла);

        Состояние(«Обработка файла Microsoft Excel…»);

        ExcelЛист = Excel.Sheets(НомерЛистаExcel);

    Исключение

        Сообщить(«Ошибка. Возможно неверно указан номер листа книги Excel.»);

        Возврат ложь;

        
    КонецПопытки;

Если на компе нет экселя, то никак не загрузить?

   МихаилМ

1 — 08.08.18 — 13:13

через oledb(ado), odbc, распаковать в xml

   13_Mult

2 — 08.08.18 — 13:45

http://catalog.mista.ru/public/225624/

   ac13

3 — 08.08.18 — 13:48

(1) (2) спасибо!

   ac13

4 — 08.08.18 — 15:19

А как получить имя первого листа?

ПодключениеADODB = «MicrosoftJetOLEDB40»;

ФайлEXCEL = ИмяФайла;

ИмяЛиста = ???;

СтрокаЗаголовка = 1;

НачСтрока = 0;

КонСтрока = 0;

СonnectionString = «Provider=Microsoft.Jet.OLEDB.4.0;Data Source= »  + СокрЛП(ФайлEXCEL) + «;Extended Properties=»»Excel 8.0;HDR=YES;IMEX=1;»»»;

Попытка

     ADODBConnection = Новый COMОбъект(«ADODB.Connection»);

     ADODBConnection.ConnectionString =  СonnectionString;

     ADODBConnection.Open();

     ADODBConnection.CursorLocation = 3;

Исключение

     Сообщить(НСтр(«ru = ‘»+ОписаниеОшибки()+»‘»), СтатусСообщения.Внимание);

КонецПопытки;

ТекстЗапроса = «SELECT * FROM [» + ИмяЛиста + «$]»;

   Михаил Козлов

5 — 08.08.18 — 15:52

Я так делал (не знаю, правильно ли — не спец):

Catalog = Новый COMОбъект(«ADOX.Catalog»);

Catalog.ActiveConnection = ADODB;

колвоЛистов = Catalog.Tables.Count;

ДЛЯ лст = 0 ПО колвоЛистов-1 Цикл

  ИмяЛиста = СокрЛП(Catalog.Tables(лст).Name);

  поз = Найти(ИмяЛиста,»$_»);

  Если поз=0 Тогда                

    ЗагрузитьДанныеЛиста(ИмяЛиста);

  КонецЕсли;

КонецЦикла;

   Вафель

6 — 08.08.18 — 15:54

можно читать через табличный документ

   singlych

7 — 08.08.18 — 15:54

ТабличныйДокумент = Новый ТабличныйДокумент;

ТабличныйДокумент.Прочитать(ИмяФайла);

   ac13

8 — 08.08.18 — 17:24

(5) так получилось, спасибо!

   ac13

9 — 09.08.18 — 17:13

Есть возможность загружать файлы и XLS и XLSX

Так грузит только XLS

СonnectionString = «Provider=Microsoft.Jet.OLEDB.4.0;Data Source= »  + СокрЛП(ФайлEXCEL) + «;Extended Properties=»»Excel 8.0;HDR=YES;IMEX=1;»»»;

На этот метод

СonnectionString = «Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};Dbq=» + СокрЛП(ФайлEXCEL) + «;»;

выдает

Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию

   hhhh

10 — 09.08.18 — 17:38

(9) ну тогда (7)

   ac13

11 — 09.08.18 — 17:54

(10) если можно так, зачем тогда используют эти методы ?

   Deon

12 — 09.08.18 — 17:55

(11) Раньше нельзя было

   Cyberhawk

13 — 09.08.18 — 18:13

Надежнее и управляемее, чем чтение xml, способа нет

   MaxS

14 — 09.08.18 — 19:40

В 1С в режиме предприятия Файл — Открыть, выбрать excel файл

  

ac13

15 — 10.08.18 — 08:41

(14) нет, мне нужно файл не открывать, а загружать

TurboConf — расширение возможностей Конфигуратора 1С

ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.

Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.

Получить 200 видеоуроков по 1С бесплатно:

  • Бесплатный видео самоучитель по 1С Бухгалтерии 8.2 и 8.3;
  • Самоучитель по новой версии 1С ЗУП 3.0;
  • Хороший курс по 1С Управление торговлей 11.

Елена Судницына 16.10.2012
Здравствуйте, Елена!
Сегодняшнюю часть модуля 5 по загрузке данных в 1С из Экселя просмотрела, очень хотела проделать все сама, но при «Загрузке данных из табличного документа» при выборе файла «Сотрудники» программа мне пишет «Ошибка. Возможно неверно указан номер листа книги Excel.» (работаю в учебной базе). Обидно.

Елена Грянина
А просто файл XLS можете открыть? Если можете – скопируйте тогда все данные из екселя в буфер, а потом вставьте их в обработку на закладку Табличный документ.

Елена Судницына
Спасибо огромное, Елена!
Воспользовалась вашими рекомендациями, и всё получилось! У меня дома стоит Exсel Starter 2010. Возможно, проблемы связаны с ограниченной функциональностью этой программы.

Вам будет интересно

Дата публикации: Апр 19, 2013

Поставьте вашу оценку этой статье:

Загрузка…

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

1

18.02.2015, 07:57. Показов 10294. Ответов 15


Здравствуйте.
Пытаюсь загрузить данные таблицы в 1С 8.2. Скачал обработчик «ЗагрузкаДанныхИзТабличногоДокумента.epf» и выдает ошибку: «Ошибка. Возможно неверно указан номер листа книги Excel.» Делаю все как в статье, ну там не сказано как они указывали номер листа или я чайник и до меня не доходит, а у них все получается.

__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь

0

Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

18.02.2015, 07:57

Ответы с готовыми решениями:

Загрузка из Excel
здрасте!
Сейчас будет всем надоевшая фраза, а шо делать;). Итак!
Я новичок( вот она фраза):lol:….

Загрузка из EXCEL
Всем привет!
Создаю обработку по заполнению тч документа(счет на оплату) из excel файлика через…

Загрузка с Excel
Выгрузил в ехсел ! все нормально , вроде бы!
Теперь пытаюсь загрузить из ехсела , но не…

Загрузка данных из Excel в 1С
Добрый день всем. Делаю внешнюю обработку.Она должны загружать из Excel в 1С (управляемые формы….

15

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 08:22

2

Хорошо бы саму обработку посмотреть и екселевский файл тоже

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 08:53

 [ТС]

3

Вообщем вот

0

ott88

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:31

4

ошибка появляется похоже в функции мПрочитатьТабличныйДокументИзExcel(ТабличныйДокуме нт, ИмяФайла, НомерЛистаExcel = 1) из модуля объекта:

1C
1
2
3
4
5
6
7
8
9
10
Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Excel.WorkBooks.Open(ИмяФайла);
        Состояние("Обработка файла Microsoft Excel...");
        ExcelЛист = Excel.Sheets(НомерЛистаExcel);
    Исключение
        Сообщить("Ошибка. Возможно неверно указан номер листа книги Excel.");
        Возврат ложь;
        
    КонецПопытки;

Везде, где вызывается эта функция, передаются первые 2 параметра, а НомерЛистаExcel всегда передается=1.
Попробовал у себя загрузить из екселевского файла, работает. Может какие компоненты не установлены.

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:39

 [ТС]

5

Может быть я не отрицаю, я не на лицензионной версии 1С, скачал которую смог из- за этого и не идет наверно.

0

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:44

6

Пользователь ОС входит в группу «Пользователи DCOM»? Надо будет перезапустить службу Агент сервера 1с.

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:48

 [ТС]

7

нет как я понял. Потому что его вообще нет(Я посмотрел в справке->о программе) и так ничего не узакано

0

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:56

8

Т.е. в операционной системе в локальных пользователях и группах нет такой группы «Пользователи DCOM»?

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:58

 [ТС]

9

нет

0

Dethmontt

Модератор

Эксперт 1С

3697 / 2897 / 569

Регистрация: 10.03.2011

Сообщений: 11,398

Записей в блоге: 1

18.02.2015, 11:01

10

Измени вот так:

1C
1
2
3
4
5
6
7
8
9
10
Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Excel.WorkBooks.Open(ИмяФайла);
        Состояние("Обработка файла Microsoft Excel...");
        ExcelЛист = Excel.Sheets(НомерЛистаExcel);
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат ложь;
        
    КонецПопытки;

А потом скопируй сюда текст ошибки.

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

24.02.2015, 07:39

 [ТС]

11

Попробовал изменить как Вы сказали, не получилось и текст ошибки вставил.

0

duk337

2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

25.02.2015, 22:11

12

Цитата
Сообщение от IOSIV
Посмотреть сообщение

Попробовал изменить как Вы сказали, не получилось и текст ошибки вставил.

Этот текст и расчитан на вывод системой ошибки, а не на исправление ситуации.

1C
1
2
Исключение
        Сообщить(ОписаниеОшибки());

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

27.02.2015, 08:23

 [ТС]

13

тогда все правильно, он у меня и выводит еще 4 ошибки

0

2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

27.02.2015, 22:59

14

откуда 4-то?

0

0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

02.03.2015, 11:10

 [ТС]

15

Как то так, или я не правильно делаю. Я запускал через толстый клиент и открывал там обработчик и он выдавал после этого вот такие ошибки{ВнешняяОбработка.ЗагрузкаДанныхИзТабличного Документа.МодульОбъекта(490,18)}: Ожидается выражение
Сообщить(<<?>>ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(490,9)}: Недостаточно фактических параметров (Сообщить)
<<?>>Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(490,91)}: Неопознанный оператор
Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)<<?>>»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(490,94)}: Ожидается символ ‘;’
Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);<<?>>
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(493,5)}: Ожидается ключевое слово ‘КонецФункции’ (‘EndFunction’)
<<?>>КонецПопытки;
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(514,10)}: Оператор Возврат (Return) не может употребляться вне процедуры или функции
Возврат <<?>>Истина;
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокуме нта.МодульОбъекта(514,17)}: Обнаружено логическое завершение исходного текста модуля
Возврат Истина;<<?>>
Скорее всего я что то делал не так, потому что когда скачал другой обработчик и попробовал через него загрузить, то получилось. Вот обработчик

0

2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

03.03.2015, 13:03

16

1.Кавычки на место поставьте.
2.Описание ошибки — это система, а не Вы.
3. Синтакс-контроль для начала каждый раз.

Рецензия: Нету царя в голове. Написано примерно «2»+2+=,» — это очень мягко я сымитировал. А тут знаний 1с не требуется.

Не по теме:

Откуда народ стал брать шушпанчиков, бегающих по клаве? Их в «Природе» стали продавать, что ли?

0

Автор zzbars, 05 фев 2012, 16:04

0 Пользователей и 1 гость просматривают эту тему.

Не получается загрузить таблицу в 1С.

Запускаю обработку: «ЗагрузкаДанныхИзТабличногоДокумента.epf»
Загружаю .xls файл.
Не грузит, и выдает ошибку: «Ошибка. Возможно неверно указан номер листа книги Excel».

Что это за ошибка? Как с ней бороться. В интернете ничего не нашел.
Все делаю по инструкции, а она постоянно выскакивает!

Подскажите, пожалуйста, в чем дело.


Желательно было пример кода привести.
Вы просто не к той странице в Экселе обращаетесь.


Возможно… А где его (код) посмотреть?
И к какой же странице в Эксель обращаться?

Думал, проблема в Open Excel… Поставил Microsoft, проблема осталась(


Не понял. А какой обработкой загружаете информацию?
Ведь именно в этой обработке  и надо смотреть.



Когда открываете ЭКСЕЛЬ (тот файл который пытаетесь загрузить в 1С) там внизу Листы вообще есть?

(Создайте новый «Пустой» файл ЭКСЕЛЯ и скопируйте туда все из вашего файла и попробуйте загрузить)

Если долго всматриваться в учебник…то в голову может прийти мысль его открыть!


Йоксель » Главный форум

  1. В демо конфигурации есть пример которой загружает файл xls в форму, а можно ли пример в котором файл сразу загружается в ТаблицуЗначений ???

    Отправлено 12 года(лет) назад #

  2. В примере файл загружается в таблицу значений на форме

    Отправлено 12 года(лет) назад #

  3. Подскажите тогда такой момент.
    У меня есть обработка для загрузки из xls файла. В модуле обработки (не в модуле формы) есть функция:

    Функция мПрочитатьТабличныйДокументИзExcel(ПутьКФайлу,ТабличныйДокумент,ТабличнаяЧасть) Экспорт

    xlLastCell = 11;
    Попытка
    Excel = Новый COMОбъект(«Excel.Application»);
    Excel.WorkBooks.Open(ПутьКФайлу);
    Состояние(«Обработка файла Microsoft Excel…»);
    ExcelЛист = Excel.Sheets(1);
    Исключение
    Сообщить(«Ошибка. Возможно неверно указан номер листа книги Excel.»);
    Возврат Ложь;
    КонецПопытки;
    ТабличныйДокумент.Очистить();
    ActiveCell = Excel.ActiveCell.SpecialCells(xlLastCell);
    RowCount = ActiveCell.Row;
    ColumnCount = ActiveCell.Column;
    Для Column = 1 По ColumnCount Цикл
    ТабличныйДокумент.Область(«C»+Формат(Column,»ЧГ=»)).ШиринаКолонки = ExcelЛист.Columns(Column).ColumnWidth;
    КонецЦикла;
    Для Row = 1 По RowCount Цикл
    Для Column = 1 По ColumnCount Цикл
    ТабличныйДокумент.Область(«R»+Формат(Row, «ЧГ=»)+»C»+Формат(Column, «ЧГ=»)).Текст = ExcelЛист.Cells(Row,Column).Text;
    КонецЦикла;
    КонецЦикла;
    Excel.WorkBooks.Close();
    Excel = 0;
    Возврат Истина;
    КонецФункции

    Как мне это можно переделать под загрузку с помощью Yoksel ???

    Отправлено 12 года(лет) назад #

  4. Почти так же… Внимательней смотри документацию, там все есть.

    ТабличныйДокумент.Очистить();
    RowCount = Документ.ВысотаТаблицы();
    ColumnCount = Документ.ШиринаТаблицы();
    Для Column = 1 По ColumnCount Цикл
    ТабличныйДокумент.Область("C"+Формат(Column,"ЧГ=")).ШиринаКолонки = Документ.Область(,Column).ШиринаСтолбца();
    КонецЦикла;
    Для Row = 1 По RowCount Цикл
    Для Column = 1 По ColumnCount Цикл
    ТабличныйДокумент.Область("R"+Формат(Row, "ЧГ=")+"C"+Формат(Column, "ЧГ=")).Текст = Документ.Область(Row,Column).Text;
    КонецЦикла;
    КонецЦикла;

    Слегка модифицированный вьювер из демо-конфигурации.

    Attachments

    1. viewer1.zip (4.6 KB, 4,587 downloads) 12 года(лет) old

    Отправлено 12 года(лет) назад #

  5. Спасибо за пример. Вот теперь стало хоть что-то понятно. Документацию которая YokselComServer.chm читаю, но что-то пока не въехал….
    Подскажи еще один момент.
    У тебя в примере на форме размещен объект AciteveX Yoksel, и из МОДУЛЯ ФОРМЫ идет вызов процедуры чтение файла *.xls.

    Элемент = ЭтаФорма.ЭлементыФормы.Йоксель.GetControl ();
    Документ = Элемент.Документ;
    Документ.Открыть (ИмяФайла, ТипФайла, 0);

    В моем же случае функция чтения файла находится в МОДУЛЕ ОБРАБОТКИ, т.е. напрямую к элементам формы обратиться нельзя.
    Как можно поступить ?

    Отправлено 12 года(лет) назад #

  6. Вот еще один модифицированный пример из демки.
    Таким путем лучше идти, листов то несколько может быть…
    P.S. в первый раз написал пару строк на 8ке ;)

    Отправлено 12 года(лет) назад #

  7. Эх, вернемся к старому разговору…

    Djelf, в твоем примере опять таки чтение файл xls идет посредством объект размещенного на форме.
    Йоксель = Новый ComObject («Йоксель»);
    гКнига = Йоксель.ОткрытьКнигуExcel (ФайлКнигиExcel);

    ЭтаФорма.ЭлементыФормы.Листы.РаспределятьПоСтраницам = Ложь;
    Страницы = ЭтаФорма.ЭлементыФормы.Листы.Страницы;

    А мне нужен пример чтобы можно было открыть xls файл и загрузить его ТЗ, в обработке в которой нет форм…

    Отправлено 11 года(лет) назад #

  8. Стоп. Кажется начинаю понимать что к чему…

    Отправлено 11 года(лет) назад #

RSS экспорт этой темы

Отправить сообщение

Вы должны войти в систему, чтобы оставлять сообщения.

22.09.2018, 21:54

#1

Aleksig700 вне форума


Просто юзер


По умолчанию Поступление товаров (обработка)

Всех приветствую, прошу совета, помощи.
1С 8.2 УТ10.3.
Обработка загрузка данных из табличной части. Сохраняю накладную в 2003 excel .xls
В обработке нажимаю открыть файл и выдает ошибку «Ошибка. Возможно неверно указан номер листа книги Excel.»
В чем ошибка может быть?
Файлы по ссылке
https://drive.google.com/open?id=1wW…HZrJDSWAW9kfOC

и вопрос номер 2.
Ситуация такая: бывает один и тот же товар приходит от разных поставщиков под разными названиями. У кого такая же ситуация, кто как оприходует. В данный момент это все в рукопашку делается, но с открытием еще нескольких точек станет невозможно просматривать весь товар и объединять его в одно наименование.

Последний раз редактировалось Aleksig700; 22.09.2018 в 22:08.


23.09.2018, 08:07

#2

По умолчанию Re: Поступление товаров (обработка)

Цитата Сообщение от Aleksig700
Посмотреть сообщение

Всех приветствую, прошу совета, помощи.
1С 8.2 УТ10.3.
Обработка загрузка данных из табличной части. Сохраняю накладную в 2003 excel .xls
В обработке нажимаю открыть файл и выдает ошибку «Ошибка. Возможно неверно указан номер листа книги Excel.»
В чем ошибка может быть?
Файлы по ссылке
https://drive.google.com/open?id=1wW…HZrJDSWAW9kfOC

и вопрос номер 2.
Ситуация такая: бывает один и тот же товар приходит от разных поставщиков под разными названиями. У кого такая же ситуация, кто как оприходует. В данный момент это все в рукопашку делается, но с открытием еще нескольких точек станет невозможно просматривать весь товар и объединять его в одно наименование.

2. Есть возможность загружать с поиском по АРКИКУЛ.
2.1 Сделать свою обработку загрузки в ТЧ.Товары в которой будет возможность если не нашёл в справочнике по артикул совпадения показывать что такого нет и сразу по кнопке все эти позиции создать. Если этот вариант интересен пишите в личку. За вознаграждения сделаю её.


0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

1

18.02.2015, 07:57. Показов 10937. Ответов 15


Студворк — интернет-сервис помощи студентам

Здравствуйте.
Пытаюсь загрузить данные таблицы в 1С 8.2. Скачал обработчик «ЗагрузкаДанныхИзТабличногоДокумента.epf» и выдает ошибку: «Ошибка. Возможно неверно указан номер листа книги Excel.» Делаю все как в статье, ну там не сказано как они указывали номер листа или я чайник и до меня не доходит, а у них все получается.



0



Programming

Эксперт

94731 / 64177 / 26122

Регистрация: 12.04.2006

Сообщений: 116,782

18.02.2015, 07:57

Ответы с готовыми решениями:

Загрузка из Excel
здрасте!
Сейчас будет всем надоевшая фраза, а шо делать;). Итак!
Я новичок( вот она фраза):lol:….

Загрузка из EXCEL
Всем привет!
Создаю обработку по заполнению тч документа(счет на оплату) из excel файлика через…

Загрузка с Excel
Выгрузил в ехсел ! все нормально , вроде бы!
Теперь пытаюсь загрузить из ехсела , но не…

Загрузка данных из Excel в 1С
Добрый день всем. Делаю внешнюю обработку.Она должны загружать из Excel в 1С (управляемые формы….

15

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 08:22

2

Хорошо бы саму обработку посмотреть и екселевский файл тоже



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 08:53

 [ТС]

3

Вообщем вот



0



ott88

10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:31

4

ошибка появляется похоже в функции мПрочитатьТабличныйДокументИзExcel(ТабличныйДокумент, ИмяФайла, НомерЛистаExcel = 1) из модуля объекта:

1C
1
2
3
4
5
6
7
8
9
10
Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Excel.WorkBooks.Open(ИмяФайла);
        Состояние("Обработка файла Microsoft Excel...");
        ExcelЛист = Excel.Sheets(НомерЛистаExcel);
    Исключение
        Сообщить("Ошибка. Возможно неверно указан номер листа книги Excel.");
        Возврат ложь;
        
    КонецПопытки;

Везде, где вызывается эта функция, передаются первые 2 параметра, а НомерЛистаExcel всегда передается=1.
Попробовал у себя загрузить из екселевского файла, работает. Может какие компоненты не установлены.



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:39

 [ТС]

5

Может быть я не отрицаю, я не на лицензионной версии 1С, скачал которую смог из- за этого и не идет наверно.



0



10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:44

6

Пользователь ОС входит в группу «Пользователи DCOM»? Надо будет перезапустить службу Агент сервера 1с.



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:48

 [ТС]

7

нет как я понял. Потому что его вообще нет(Я посмотрел в справке->о программе) и так ничего не узакано



0



10 / 10 / 1

Регистрация: 30.09.2013

Сообщений: 46

18.02.2015, 09:56

8

Т.е. в операционной системе в локальных пользователях и группах нет такой группы «Пользователи DCOM»?



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

18.02.2015, 09:58

 [ТС]

9

нет



0



Dethmontt

Модератор

Эксперт 1С

3724 / 2918 / 575

Регистрация: 10.03.2011

Сообщений: 11,491

Записей в блоге: 1

18.02.2015, 11:01

10

Измени вот так:

1C
1
2
3
4
5
6
7
8
9
10
Попытка
        Excel = Новый COMОбъект("Excel.Application");
        Excel.WorkBooks.Open(ИмяФайла);
        Состояние("Обработка файла Microsoft Excel...");
        ExcelЛист = Excel.Sheets(НомерЛистаExcel);
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат ложь;
        
    КонецПопытки;

А потом скопируй сюда текст ошибки.



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

24.02.2015, 07:39

 [ТС]

11

Попробовал изменить как Вы сказали, не получилось и текст ошибки вставил.



0



duk337

2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

25.02.2015, 22:11

12

Цитата
Сообщение от IOSIV
Посмотреть сообщение

Попробовал изменить как Вы сказали, не получилось и текст ошибки вставил.

Этот текст и расчитан на вывод системой ошибки, а не на исправление ситуации.

1C
1
2
Исключение
        Сообщить(ОписаниеОшибки());



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

27.02.2015, 08:23

 [ТС]

13

тогда все правильно, он у меня и выводит еще 4 ошибки



0



2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

27.02.2015, 22:59

14

откуда 4-то?



0



0 / 0 / 0

Регистрация: 18.08.2014

Сообщений: 115

02.03.2015, 11:10

 [ТС]

15

Как то так, или я не правильно делаю. Я запускал через толстый клиент и открывал там обработчик и он выдавал после этого вот такие ошибки{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(490,18 )}: Ожидается выражение
Сообщить(<<?>>ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(490,9)}: Недостаточно фактических параметров (Сообщить)
<<?>>Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(490,91)}: Неопознанный оператор
Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)<<?>>»);
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(490,94)}: Ожидается символ ‘;’
Сообщить(ОписаниеОшибки»(Ошибка. Возможно неверно указан номер листа книги Excel.)»);<<?>>
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(493,5)}: Ожидается ключевое слово ‘КонецФункции’ (‘EndFunction’)
<<?>>КонецПопытки;
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(514,10)}: Оператор Возврат (Return) не может употребляться вне процедуры или функции
Возврат <<?>>Истина;
{ВнешняяОбработка.ЗагрузкаДанныхИзТабличногоДокумента.МодульОбъекта(514,17)}: Обнаружено логическое завершение исходного текста модуля
Возврат Истина;<<?>>
Скорее всего я что то делал не так, потому что когда скачал другой обработчик и попробовал через него загрузить, то получилось. Вот обработчик



0



2954 / 1766 / 82

Регистрация: 03.11.2011

Сообщений: 8,280

03.03.2015, 13:03

16

1.Кавычки на место поставьте.
2.Описание ошибки — это система, а не Вы.
3. Синтакс-контроль для начала каждый раз.

Рецензия: Нету царя в голове. Написано примерно «2»+2+=,» — это очень мягко я сымитировал. А тут знаний 1с не требуется.

Не по теме:

Откуда народ стал брать шушпанчиков, бегающих по клаве? Их в «Природе» стали продавать, что ли?



0



   ac13

08.08.18 — 13:08

Попытка

        Excel = Новый COMОбъект(«Excel.Application»);

        Excel.WorkBooks.Open(ИмяФайла);

        Состояние(«Обработка файла Microsoft Excel…»);

        ExcelЛист = Excel.Sheets(НомерЛистаExcel);

    Исключение

        Сообщить(«Ошибка. Возможно неверно указан номер листа книги Excel.»);

        Возврат ложь;

        
    КонецПопытки;

Если на компе нет экселя, то никак не загрузить?

   МихаилМ

1 — 08.08.18 — 13:13

через oledb(ado), odbc, распаковать в xml

   13_Mult

2 — 08.08.18 — 13:45

   ac13

3 — 08.08.18 — 13:48

(1) (2) спасибо!

   ac13

4 — 08.08.18 — 15:19

А как получить имя первого листа?

ПодключениеADODB = «MicrosoftJetOLEDB40»;

ФайлEXCEL = ИмяФайла;

ИмяЛиста = ???;

СтрокаЗаголовка = 1;

НачСтрока = 0;

КонСтрока = 0;

СonnectionString = «Provider=Microsoft.Jet.OLEDB.4.0;Data Source= »  + СокрЛП(ФайлEXCEL) + «;Extended Properties=»»Excel 8.0;HDR=YES;IMEX=1;»»»;

Попытка

     ADODBConnection = Новый COMОбъект(«ADODB.Connection»);

     ADODBConnection.ConnectionString =  СonnectionString;

     ADODBConnection.Open();

     ADODBConnection.CursorLocation = 3;

Исключение

     Сообщить(НСтр(«ru = ‘»+ОписаниеОшибки()+»‘»), СтатусСообщения.Внимание);

КонецПопытки;

ТекстЗапроса = «SELECT * FROM [» + ИмяЛиста + «$]»;

   Михаил Козлов

5 — 08.08.18 — 15:52

Я так делал (не знаю, правильно ли — не спец):

Catalog = Новый COMОбъект(«ADOX.Catalog»);

Catalog.ActiveConnection = ADODB;

колвоЛистов = Catalog.Tables.Count;

ДЛЯ лст = 0 ПО колвоЛистов-1 Цикл

  ИмяЛиста = СокрЛП(Catalog.Tables(лст).Name);

  поз = Найти(ИмяЛиста,»$_»);

  Если поз=0 Тогда                

    ЗагрузитьДанныеЛиста(ИмяЛиста);

  КонецЕсли;

КонецЦикла;

   Вафель

6 — 08.08.18 — 15:54

можно читать через табличный документ

   singlych

7 — 08.08.18 — 15:54

ТабличныйДокумент = Новый ТабличныйДокумент;

ТабличныйДокумент.Прочитать(ИмяФайла);

   ac13

8 — 08.08.18 — 17:24

(5) так получилось, спасибо!

   ac13

9 — 09.08.18 — 17:13

Есть возможность загружать файлы и XLS и XLSX

Так грузит только XLS

СonnectionString = «Provider=Microsoft.Jet.OLEDB.4.0;Data Source= »  + СокрЛП(ФайлEXCEL) + «;Extended Properties=»»Excel 8.0;HDR=YES;IMEX=1;»»»;

На этот метод

СonnectionString = «Driver={Microsoft Excel Driver (*.xls, *.xlsx, *.xlsm, *.xlsb)};Dbq=» + СокрЛП(ФайлEXCEL) + «;»;

выдает

Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (Microsoft OLE DB Provider for ODBC Drivers): [Microsoft][Диспетчер драйверов ODBC] Источник данных не найден и не указан драйвер, используемый по умолчанию

   hhhh

10 — 09.08.18 — 17:38

(9) ну тогда (7)

   ac13

11 — 09.08.18 — 17:54

(10) если можно так, зачем тогда используют эти методы ?

   Deon

12 — 09.08.18 — 17:55

(11) Раньше нельзя было

   Cyberhawk

13 — 09.08.18 — 18:13

Надежнее и управляемее, чем чтение xml, способа нет

   MaxS

14 — 09.08.18 — 19:40

В 1С в режиме предприятия Файл — Открыть, выбрать excel файл

  

ac13

15 — 10.08.18 — 08:41

(14) нет, мне нужно файл не открывать, а загружать

Автор zzbars, 05 фев 2012, 16:04

0 Пользователей и 1 гость просматривают эту тему.

Не получается загрузить таблицу в 1С.

Запускаю обработку: «ЗагрузкаДанныхИзТабличногоДокумента.epf»
Загружаю .xls файл.
Не грузит, и выдает ошибку: «Ошибка. Возможно неверно указан номер листа книги Excel».

Что это за ошибка? Как с ней бороться. В интернете ничего не нашел.
Все делаю по инструкции, а она постоянно выскакивает!

Подскажите, пожалуйста, в чем дело.


Желательно было пример кода привести.
Вы просто не к той странице в Экселе обращаетесь.


Возможно… А где его (код) посмотреть?
И к какой же странице в Эксель обращаться?

Думал, проблема в Open Excel… Поставил Microsoft, проблема осталась(


Не понял. А какой обработкой загружаете информацию?
Ведь именно в этой обработке  и надо смотреть.



Когда открываете ЭКСЕЛЬ (тот файл который пытаетесь загрузить в 1С) там внизу Листы вообще есть?

(Создайте новый «Пустой» файл ЭКСЕЛЯ и скопируйте туда все из вашего файла и попробуйте загрузить)

Если долго всматриваться в учебник…то в голову может прийти мысль его открыть!


  • Ошибка во время установки windows 10 0x8007025d
  • Ошибка возможно на сайте используются устаревшие или ненадежные параметры безопасности протокола tls
  • Ошибка во время установки virtualbox
  • Ошибка возможно на диске закончилось место
  • Ошибка во время установки python 0х80070643