1с выгрузка в excel не работает
Коллеги, Добрый день! Проблема не работает экспорт в excel в клиент - серверном варианте, хотя этот же код работает в файловом варианте базы. Конфигурация - Управление торговлей, редакция 11.0 (11.0.8.13) Код команды для печати: &НаКлиенте Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
Возможно важный важный момент, когда запускаю экспорт в эксель, все зависает, какое то время висит и далее ничего не происходит.
В принципе разобрался в вопросе, добавил: ExcelПриложение.WorkBooks.Open(ИмяФайла); + на сервере, где крутится сервер 1С, переустановили офис на 64х битную, как оказалось иначе ошибка: "ExcelПриложение = Новый COMОбъект("Excel.Application"); по причине: После все взлетело. Отдельное спасибо за идею :)
Оно было установлено, но битность не та. Вспомнилась фраза из фильма "Белое солнце пустыни": "..Гранаты у него не той системы.." (С) :)))
Еще кое что забыл указать, перед тем как переустановить эксель на верный, на одном форуме вычитал следующее: "Используется клиент-серверный вариант работы. Операционка Windows Server 2008, СУБД MS SQL 2008. При синхронизации используется прямое подключение к базе данных. При проверке подключения, вне зависимости от того, какой указывается путь и логин к синхронизируемой базе данных, появляется ошибка: "Не удалось подключиться к другой программе: -2147024891 (0x80070005): Отказано в доступе". Решение: 1. Администрирование - Службы компонентов – Компьютеры – Мой компьютер – Приложения COM+ - Создать приложение – Создать новое приложение – вводим имя «V82.COMConnector»(переключатель «Серверное приложение») – Указанный пользователь (Администратор) 2. В появившейся ветке V82COMConnector – подветка Компоненты – создание нового компонента – Установка новых компонентов - <каталог 1С>incomcntr.dll 3. Правой кнопкой по ветке V82COMConnector – Свойства – Безопасность – Снял галку «Принудительная проверка доступа для приложений» - Поставил галку «Применить политику программных ограничений» - Уровень ограничений «Неограниченный»" Так что точно сказать, что именно помогло не смогу, возможно обе части решения вопроса нужны.каталог>
непонятно зачем на сервере ЗапуститьПриложение(ИмяФайла); А для ТабличныйДокумент.Записать(ИмяФайла,ТипФайлаТабличногоДокумента.XLSX) эксель там не нужен
На тот момент, я все тестировал на самом сервере, где располагался сервер 1С. Соответственно все летало и взлетало. Но когда попытался сделать выгрузку из клиента запушенного на другом компьютере, у пользователя ничего не появлялось, зато запускалась копия эксель с табличным документом ?)) было забавно. В итоге сегодня переделал код как привел ниже (все работает как на сервере, также на клиентской машине), может кому пригодится:
Задача стояла другая, необходимо было не только записать эксель с определенным названием, но и запустить его на клиентской машине.
Одним из полезных нововведений на платформе 8.3.6 стала возможность возможность импорта содержимого из файлов в форматах XLS (Microsoft Excel 97), Microsoft Office OpenXML (Microsoft Excel 2007- 2010) и ODS (OpenDocument) в табличный документ.
На платформе 8.3.10 появилась возможность считывания данных с отдельных листов книги EXCEL.
Данная возможность доступна как в интерактивном режиме, так и из встроенного языка.
Реализована поддержка вставки из буфера обмена областей, скопированных из Microsoft Excel и OpenOffice Calc.
Реализация импорта из EXCEL на встроенном языке стала возможна в результате нововведений в функционал объекта "ТабличныйДокумент":
Для метода "Прочитать" объекта "ТабличныйДокумент" реализован параметр "СпособЧтенияЗначений" (Новое системное перечисление "СпособЧтенияЗначенийТабличногоДокумента"). (с) Загрузка из EXCEL
Так вот. И в excel и в mxl ячейка может содержать значение и иметь формат представления. Проблема в том, что СКД при выводе значений в табличный документ выводит только представление.
Проблема при сохранении табличного документа в файл xlsx
Если в ячейке будет код номенклатуры с лидирующими нулями - при экспорте в эксель значение ячейки их обрежет,
например было "00246100" стало "246100":
При этом в представлении всё верно.
И да, если переименовать xlsx в zip и открыть архиватором sheet1.xml - то там будет именно "246100".
Конечно, есть ещё вариант ручной установки значения ячейки таб. документа, и он работает.
На клиенте.
Для регламентных не годится.
Проблема при загрузке табличного документа из файла xlsx
В режиме предприятия (меню Файл - Открыть) это пустой таб. документ
с 1026 столбца.
Хотя в экселе файл открывается прекрасно:
Ньюансы (различия) чтения методом OLE и ТабДок
Часть кода для сравнения этих методов:
Я конечно буду рад ошибаться, но, по-моему, нативные средства платформы по работе с Excel совсем далекоооооо не всегда применимы на практике.
Excel 2016 стал тормозить при работе с файлами, которые были выгружены/созданы 1С и подобных (ERP) систем…
Комп новый, не в нем проблема. Файлы маленького размера до 100 кб. Файл преобразовывала в xlsx и xlsb
. Принтер, который по умолчанию - подключен. Работа в Windows 10 c Office 2016, установлены все обновления.
Ни один из нижеперечисленных методов результата не дал:
- Поиск объектов: вкладка Главная → Найти и выделить → Выделение группы ячеек → Объекты. Не найдено ни одного объекта!
- Закрытие Outlook, так как торможение файлов, так же может наблюдаться при открытом почтовом клиенте Outlook, если у него установлены параметры отслеживание действий с файлами для Пользователя. Соответственно отменила отслеживание действий с файлами.
- Открытия файла как архив. Отсутствие папки drawings.
- Условное форматирование → Удалить правила → Удалить правила со всего листа.
- Очистить форматы – не помогло
В чем может быть проблема?!
Все ответы
- Уточните пожалуйста, файлы находятся локально или на удаленном сервере?
- В случае если используется сторонний антивирус, выгрузка антивируса помогает?
Best Regards, Andrei .
MCP
файлы находятся локально.
антивирус не используется.
- Поиск объектов: вкладка Главная → Найти и выделить → Выделение группы ячеек → Объекты. Не найдено ни одного объекта!
- Закрытие Outlook, так как торможение файлов, так же может наблюдаться при открытом почтовом клиенте Outlook, если у него установлены параметры отслеживание действий с файлами для Пользователя. Соответственно отменила отслеживание действий с файлами.
- Открытия файла как архив. Отсутствие папки drawings.
- Условное форматирование → Удалить правила → Удалить правила со всего листа.
- Очистить форматы – не помогло
- Поиск объектов: вкладка Главная → Найти и выделить → Выделение группы ячеек → Объекты. Не найдено ни одного объекта!
- Закрытие Outlook, так как торможение файлов, так же может наблюдаться при открытом почтовом клиенте Outlook, если у него установлены параметры отслеживание действий с файлами для Пользователя. Соответственно отменила отслеживание действий с файлами.
- Открытия файла как архив. Отсутствие папки drawings.
- Условное форматирование → Удалить правила → Удалить правила со всего листа.
- Очистить форматы – не помогло
В выгружаемых файлах нет линкованных динамических структур находящихся в ERP, CRM, SQL либо линков на данные находящиеся в отдельных файлах, внешних источниках?
Такая же ерунда. Где-то на просторах инета находил рекомендации по видеокарте аж. Тоже не помогает:( Бесит жутко :(
В качестве эксперимента, уточните пожалуйста помогает ли перегрузка/отключение службы "Print Spooler"?
Best Regards, Andrei .
MCP
- Поиск объектов: вкладка Главная → Найти и выделить → Выделение группы ячеек → Объекты. Не найдено ни одного объекта!
- Закрытие Outlook, так как торможение файлов, так же может наблюдаться при открытом почтовом клиенте Outlook, если у него установлены параметры отслеживание действий с файлами для Пользователя. Соответственно отменила отслеживание действий с файлами.
- Открытия файла как архив. Отсутствие папки drawings.
- Условное форматирование → Удалить правила → Удалить правила со всего листа.
- Очистить форматы – не помогло
Тоже самое у меня происходит. Притом эксель 2010 не тормозит. Как решить вопрос? За год так ответа и не дали, получается? :)
Опишу решение. (Как решил у себя) Тормозили файлы выгруженные из 1С, но тормозили те, которые пользователи выгружали в формате Xls 97-2003. Если открывать эти файлы в Офисе2016 то через какое-то время (порой и сразу) Excel начинал тупить и съедать проц (40-70%) Решили проблему сохранением файлов в новом формате, причем всех. Если из 10 открытых файлов есть хотя бы 1 файл созданный из 1С в формате 97-2003 то висели все открытые Excel-файлы.
Файл созданный руками в формате 97-2003 не тормозили, файлы созданные из 1С в формате 97-2003 (копированием таблицы) а не "сохранить как" тоже не тормозили, тормозят и подвешивают Excel 2016 только файлы выгруженные из 1С через "сохранить как" и пользователи выбирают по привычке "Лист Excel. (*.xls), а надо выбирать "Лист Excel 2007. (*.xlsx)"
Проверьте, нам помогло. УПП и платформа 8.3.10.2561
Сегодня нашел косяк. Файл сформирован из 1С , листы снизу скрыты(задвинуды полосой пролистывания) - прокруткой и при этом тормозит при копировании, перескакивании по ячейкам. Как только отодвигаю эту задвижку и становятся видны листы, так перестают тормозть файлы.
Проверил на 12 файлах, на 4х компьютерах!! Задвигаешь обратно (скрываешь листы, так сразу начинает тупить при копировании ячейки)
Не секрет, что среди офисных работников, в частности тех, которые заняты в расчетной и финансовой сфере, особенно популярны программы Excel и 1С. Поэтому довольно часто приходится производить обмен данными между этими приложениями. Но, к сожалению, далеко не все пользователи знают, как быстро это сделать. Давайте выясним, как выгрузить данные из 1С в документ Excel.
Выгрузка информации из 1C в Excel
Если загрузка данных из Excel в 1С – это довольно сложная процедура, автоматизировать которую можно только с помощью сторонних решений, то обратный процесс, а именно выгрузка из 1С в Эксель – это сравнительно простой набор действий. Его можно легко выполнить с помощью встроенных инструментов вышеуказанных программ, причем сделать это можно несколькими способами, в зависимости от того, что именно пользователю нужно перенести. Рассмотрим, как это выполнить на конкретных примерах в 1С версии 8.3.
Способ 1: копирование содержимого ячейки
Одна единица данных содержится в ячейке 1С. Её можно перенести в Эксель обычным методом копирования.
-
Выделяем ячейку в 1С, содержимое которой нужно скопировать. Кликаем по ней правой кнопкой мыши. В контекстном меню выбираем пункт «Копировать». Можно воспользоваться также универсальным способом, который действует в большинстве программ, работающих на ОС Windows: просто выделяем содержимое ячейки и набираем комбинацию клавиш на клавиатуре Ctrl+C.
Вместо этого действия можно после выделения ячейки, находясь во вкладке «Главная», щелкнуть по значку «Вставить», который расположен на ленте в блоке «Буфер обмена».
Содержимое ячейки 1С будет вставлено в Excel.
Способ 2: вставка списка в существующую книгу Excel
Но вышеуказанный способ подойдет лишь в том случае, если нужно перенести данные из одной ячейки. Когда же нужно совершить перенос целого списка, то следует воспользоваться другим способом, ведь копирование по одному элементу отберет очень много времени.
-
Открываем любой список, журнал или справочник в 1С. Кликаем на кнопку «Все действия», которая должна располагаться вверху от обрабатываемого массива данных. Запускается меню. Выбираем в нем пункт «Вывести список».
Поле «Выводить в» имеет два значения:
По умолчанию установлен первый вариант. Для переноса данных в Эксель он как раз и подходит, так что тут мы ничего не меняем.
В блоке «Выводить колонки» можно указать, какие колонки из списка вы хотите перевести в Excel. Если вы собираетесь производить перенос всех данных, то эту настройку тоже не трогаем. Если же вы хотите произвести конвертацию без какого-то столбца или нескольких столбцов, то снимаем галочку с соответствующих элементов.
Список вставлен в документ.
Способ 3: создание новой книги Excel со списком
Также список из программы 1С можно сразу вывести в новый файл Эксель.
- Выполняем все те шаги, которые были указаны в предыдущем способе до формирования списка в 1С в табличном варианте включительно. После этого жмем на кнопку вызова меню, которая расположена в верхней части окна в виде треугольника, вписанного в оранжевый круг. В запустившемся меню последовательно переходим по пунктам «Файл» и «Сохранить как…».
Ещё проще сделать переход, нажав на кнопку «Сохранить», которая имеет вид дискеты и расположена в блоке инструментов 1С в самом верху окна. Но такая возможность доступна только пользователям, которые применяют программу версии 8.3. В ранних версиях можно использовать только предыдущий вариант.
Весь список будет сохранен отдельной книгой.
Способ 4: копирование диапазона из списка 1С в Excel
Бывают случаи, когда нужно перенести не весь список, а только отдельные строки или диапазон данных. Этот вариант тоже вполне воплотим с помощью встроенных инструментов.
-
Выделяем строки или диапазон данных в списке. Для этого зажимаем кнопку Shift и кликаем левой кнопкой мыши по тем строкам, которые нужно перенести. Жмем на кнопку «Все действия». В появившемся меню выбираем пункт «Вывести список…».
Способ 5: Сохранение документов в формате Excel
В Excel иногда нужно сохранять не только списки, но и созданные в 1С документы (счета, накладные платежные поручения и т.д.). Это связано с тем, что для многих пользователей редактировать документ проще в Экселе. К тому же в Excel можно удалить заполненные данные и, распечатав документ, использовать его при необходимости как бланк для ручного заполнения.
-
В 1С в форме создания любого документа имеется кнопка печати. На ней расположена пиктограмма в виде изображения принтера. После того, как в документ введены необходимые данные и он сохранен, жмем на этот значок.
Документ будет сохранен в формате Эксель. Этот файл теперь можно открывать в данной программе, и проводить дальнейшую его обработку уже в ней.
Как видим, выгрузка информации из 1С в формат Excel не составляет никаких сложностей. Нужно знать только алгоритм действий, так как, к сожалению, не для всех пользователей он интуитивно понятен. С помощью встроенных инструментов 1С и Эксель можно копировать содержимое ячеек, списков и диапазонов из первого приложения во второе, а также сохранять списки и документы в отдельные книги. Вариантов сохранения достаточно много и для того, чтобы пользователь мог найти подходящий именно для его ситуации, совсем не нужно прибегать к использованию стороннего программного обеспечения или применять сложные комбинации действий.
Мы рады, что смогли помочь Вам в решении проблемы.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Помогла ли вам эта статья?
Еще статьи по данной теме:
В 1С формируются квитанции ЖКХ на 200 квартир,
затем выгружается в Excel, приэтом бухгалтер утверждает, что она не может сформировать список жильцов по возрастанию номеров квартир. Например кв. № 1, 2, 3 и т.д.
Присылает бухгалтер: кв. № 46, кв. 001, кв. 010, кв. 100, кв 111 и.д.
Работать с таким порядком в ТСЖ для подготовки выписок квитанций за три года для суда, крайне сложно. Ответ бухгалтера- так работает программа. (т.е. программа создана не для людей).
В Excel — есть программа поиска по фамилии, по квартире, но она не работает с выгрузкой из 1С.
как выйти из этого дурацкого положения?
Красные флаги, броневик и вся власть советам
можно ли сделать выгрузу с 1с в EXcel книги учета материальных ценностей
Задайте вопрос или оставьте свое мнение Отменить комментарий
Несмотря на то, что 1С является самой популярной, удобной и надежной информационной системой, имеющей в своей линейке комплекс решений для автоматизации и обработки абсолютно всех бизнес-процессов на предприятиях любого масштаба и области деятельности, все равно у пользователей ежедневно возникает необходимость выгрузить данные из 1С в сторонние программы или файлы. В данной статье рассмотрим, что такое выгрузка из 1С и покажем, как сделать выгрузку из 1С и какие проблемы могут возникать при этом. Забегая вперед, отметим, что если по прочтение статьи вам будет нужно задать вопрос по 1С, обратитесь к нашим специалистам по телефону или через заявку на сайте. Мы свяжемся с вами в кратчайшие сроки.
Данные, которые можно выгружать из 1С
1С любой конфигурации штатно поддерживает выгрузку таких данных как:
- Печатные формы;
- Отчеты;
- Таблицы и списки.
Выгрузка данных из 1С 8.3 возможна во многих популярных форматах:
- Microsoft Excel;
- Microsoft Word;
- PDF;
- Выгрузка в CSV;
- HTML и другие.
Выгрузка печатных форм и отчетов
Любую печатную форму или отчет в 1С можно сохранить в нужном формате. Для этого понадобится открыть форму или отчет, затем выбрать в Главном меню Файл - Сохранить как.
Рис.1 Сохранение печатной формы и отчета
После этого будет открыто окно сохранения файла, в котором указывается имя и тип файла:
Рис.2 Окно сохранения файла
Возможные проблемы при выгрузке из 1С
В некоторых случаях кнопка меню «Сохранить как» может быть недоступна для выбора:
Рис.3 Сохранение невозможно
Это связано с тем, что печатная форма или отчет не активизированы в данный момент. Чтобы печатная форма стала доступна для сохранения, требуется просто кликнуть мышкой в любое место на ней:
Рис.4 Активация печатной формы
Теперь пункт меню «Сохранить как» будет доступен. Если при выгрузке данных у вас возникли также и другие проблемы, обратитесь к нашим специалистам по сопровождению 1С 8.3, мы с радостью вам поможем.
Выгрузка в Excel
Обработка данных в самом популярном табличном формате требует соответствующей выгрузки. Для того чтобы сохранить нужные данные в формате Excel, необходимо в диалоге сохранения файла указать тип Лист Excel2007-. (*.xlsx). Реже необходимо сохранить данные в старом формате Лист Excel (*.xls):
Рис.5 Сохранение нужных данных в формате Excel
Аналогично, выбирая нужный формат, можно сделать выгрузку из 1С в PDF, из 1С в WORD, из 1С в CSV, а также в другие форматы.
Выгрузка произвольных таблиц из 1С
В данном разделе будет показано, как можно выгрузить любые данные, при условии, что у вас есть на это права.
В 1С разработан штатный механизм, который позволяет выгрузить любой список (например, список документов или элементы справочника). Для этого в командной панели любого списка, в группе «Еще» доступна команда «Вывести список»:
Рис.6 Выгрузка списков
Далее требуется указать нужные колонки и нажать кнопку ОК:
Рис.7 Выбор колонок
Информация будет выведена в специальный табличный документ. Этот документ выглядит так же, как любой другой отчет в 1С, и его можно выгрузить точно так же, используя команду Файл – Сохранить как:
Рис.8 Табличный документ
Как выгрузить данные, которые не видно в списке
Зачастую, возникшая задача по выгрузке какой-то список, сопровождается необходимостью добавления туда колонок, которые точно есть в документе (справочнике), но их по каким-то причинам не видно в текущем списке. Пример: в списке «Клиенты» добавить для выгрузки поле «Телефон», которое отображается только в дополнительной панели справа:
Рис.9 Выгрузка данных, не отображающихся в списке
Чтобы телефон можно было выгрузить из 1С, его все же сначала необходимо добавить в список. Для этого надо вызвать команду «Еще - Изменить форму». Далее нам понадобиться в списке колонок найти нужную. Тут есть одна хитрость: разработчики типовых конфигураций почти всегда добавляют поле «Ссылка». Если встать на него, а затем нажать кнопку «Добавить поля», то мы увидим все возможные поля этого справочника. Находим поле «Телефон» и ставим у него галочку использования.
Рис.10 Добавить поля
Рис.11 Выгрузить данные
После этого базу данных клиентов с телефонами можно выгрузить в файл через штатную команду «Вывести список».
Обмен данными с 1С
Гарантируем обмен без ошибок между любыми системами 1С. Условия гарантии прописываем в договоре!
Перенос данных 1С
Переходите на новую программу 1С? Проведем бесплатный анализ и перенесем только необходимые данные
Читайте также: