Как загрузить вордовский документ в 1с
Перейти к содержимому

Как загрузить вордовский документ в 1с

  • автор:

Как в 1C загрузить из Word текст?

Рассмотрим приёмы получения статистической информации о документе, его составе и т.д.:
'получить общее количество символов в активном документе
' (буквы, цифры, пробелы, переход на новую строку и т.д)
WordApp.ActiveDocument.Characters.Count

'получить символ по его индексу
WordApp.ActiveDocument.Characters(14).Text
'изменить символ по его индексу
WordApp.ActiveDocument.Characters(14).Text="е" 'можно несколько "еёе"

Только не забывайте, что заменив один символ несколькими, вы измените общее количество символов в документе. Поэтому осторожнее при применении циклов. Это также касается и следующего кода.

'получаем количество слов в документе
'(переход на новую строку считается словом)
DocWord.Words.Count

'получить слово по его индексу
DocWord.Words(2).Text
'изменить слово по его индексу
DocWord.Words(2).Text="текст" 'можно несколько слов "Новый текст"

'получить количество параграфов (абзацев) в документе
WordApp.ActiveDocument.Paragraphs.Count

'получить текст параграфа по его индексу
WordApp.ActiveDocument.Paragraphs(2).Range.Text
'изменить текст параграфа по его индексу
WordApp.ActiveDocument.Paragraphs(2).Range.Text="Много текста. Много " & _
" предложений. И так далее!"

'получить количество предложений в документе
WordApp.ActiveDocument.Sentences.Count

'получить текст предложения по его индексу
WordApp.ActiveDocument.Sentences(1).Text

'получить количество предложений во втором параграфе
WordApp.ActiveDocument.Paragraphs(2).Range.Sentences.Count

'получить текст предложения 1 в параграфе 2
WordApp.ActiveDocument.Paragraphs(2).Range.Sentences(1).Text

'получить текст слова 2, в предложении 1,в параграфе 2
WordApp.ActiveDocument.Paragraphs(2).Range.Sentences(1).Words(2).Text

'добавить новую секцию (раздел)
'создаёт новый раздел на новом листе
DocWord.Sections.Add
'создаёт новый раздел на текущем листе
DocWord.Application.S_election.I_nsertBreak (wdSectionBreakContinuous) '(3)

'получить количество секций в документе
DocWord.Sections.Count

'получить текст слова 2, в предложении 1,в параграфе 2, в секции 1.
DocWord.Sections(1).Range.Paragraphs(1).Range.Sentences(1).Words(2).Text

Используя Встроенные_Свойства_Документа получаем его статистические данные.

'получаем количество страниц (листов) в документе
WordApp.ActiveDocument.BuiltInDocumentProperties(wdPropertyPages) '(14)

'получаем количество строк в документе
WordApp.ActiveDocument.BuiltInDocumentProperties(wdPropertyLines) '(23)

'получаем количество слов в документе
WordApp.ActiveDocument.BuiltInDocumentProperties(wdPropertyWords) '(15)

'получаем количество параграфов (абзацев) в документе
WordApp.ActiveDocument.BuiltInDocumentProperties(wdPropertyParas) '(24)
'и т.д.

Рассмотрим примеры кода для передвижения по документу, а также поиска и замены текста.
Метод .GoTo (перейти к) позволяет вам переместиться на нужную позицию в документе. Он при прямом вызове возвращает новую позицию курсора.

'переход на лист с именем "1"
'если не указать в конце .S_elect, то код просто выдаст положение курсора
DocWord.Application.S_election.GoTo(wdGoToPage, , , "1").S_elect

wdGoToSection (0) — перейти к секции ; wdGoToPage (1) — перейти к листу ;
wdGoToTable (2) — перейти к таблице ; wdGoToLine (3) — перейти к строке ;
wdGoToFootnote (4) — перейти к сноске ; wdGoToEndnote (5) — к примечанию ;
wdGoToComment (6) — к комментарию ; wdGoToField (7) — к полю ;
wdGoToHeading (11) — к заголовку ;
wdGoToSpellingError (13) — к орфографической ошибке ;
wdGoToGrammaticalError (14) — к грамматической ошибке.

Как загрузить вордовский документ в 1с

Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.

  • Как создать документ Word на основе шаблона
  • Скачать и выполнить эти примеры на компьютере

Работа с Word в языке 1С 8.3, 8.2 (в примерах)

С уважением, Владимир Милькин (преподаватель школы 1С программистов и разработчик обновлятора).

Владимир Милькин

Как помочь сайту: расскажите (кнопки поделиться ниже) о нём своим друзьям и коллегам. Сделайте это один раз и вы внесете существенный вклад в развитие сайта. На сайте нет рекламы, но чем больше людей им пользуются, тем больше сил у меня для его поддержки.

Как загрузить вордовский документ в 1с

телефон программиста 1С8(495)005-62-29

skype: live:di-sem

Связь с программистом 1с через телеграм@programmist_1C

Заявка программисту 1СОтправить заявку

Импорт в 1С данных из любых документов (сделать свою обработку импорта из внешних источников))

Импорт в 1с данных из любых документов

Часто нужно импортировать данные в 1С из внешних источников (Excell,Word,Pdf,Txt, Csv, Html и т.д.).

Чтобы не подключаться к каждому документу через Com объект, нужно создать свою обработку импорт из внешних источников в 1С.

В типовых конфигурациях есть такая обработка.

В данном примере мы будем создавать свою.

Алгоритм

1 В табличный документ подгружаем нужный макет

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

3 Программа 1с анализирует данные и готовит их к загрузке в нужные объекты 1с (документы/справочники)

4 Загрузка данных

Реализация

1 Создаем форму

1С импорт из Эксель, Водр, pdf, xls, txt, scv

Создаем реквизит формы ТабДок — табличный документ.

В него пользователь будет копировать нужные данные, а наша задача будет программно взять их оттуда и загрузить в 1С.

Перетащим реквизит ТабДок на форму и установим свойства как на рисунке.

Но сейчас ТабДок представляет собой обычный неразмеченный документ.

Куда будет пользователь грузить нужные колонки.

Для этого мы создадим макет:

Макет для загрузки данных в 1С

При открытии формы мы подгрузим этот макет в наш табличный документ «ТабДок» и пользователь будет знать куда ему грузить данные.

На рисунке я выделил где можно посмотреть адрес ячейки, адрес нам понадобится при импорте данных.

Создадим на форме реквизит «Данные» — таблица значений.

Сюда мы предварительно будем грузить введенные пользователем данные.

Это нужно для того чтобы пользователь мог скорректировать введенные данные, а мы могли бы ему точно указать на ошибку в загружаемых данных.

Реквизит «Данные» перенесем на другую страницу. В моем случае это «Создание участников».

1С импорт данных в 1С

Создадим процедуру, которой мы загрузим данные в 1с в таблицу значений «Данные», которую создали ранее и вывели на вторую страницу.

Работает это так:

1 открываем обработку ввода данных:

импорт в 1с запуск обработки

2 копируем нужные данные из Эксель для импорта в 1С:

скопировать данные из эксель для импорта в 1с

3 Вставляем в 1С в нашу обработку:

обработка импорта данных из эксель в 1С

4 Смотрим чтобы данные соответствовали столбцам:

1С обработка импорта из эксель, ворд и т.д.

5 Жмем далее (этой кнопкой вызывается процедура, указанная выше) и получаем результат:

Импорт в 1с результат

Мы получили данные в 1С. Теперь при нажатии «Создать участников» будут созданы элементы справочника «Участники».

С этими данными мы можем делать что угодно — они уже загружены в 1С.

Спасибо за внимание.

  • Главная
  • Блог
  • В помощь 1с программисту
  • Импорт в 1С данных из любых документов (сделать свою обработку импорта из внешних источников))

Как в 1С сформировать документ Word?

В данной статье рассмотрим достаточно простой и удобный способ формирования документов Word из 1С. Сама по себе 1С формировать документы Word “не умеет”, и для работы с такими документами используется собственно MS Word. Поэтому вначале нужно определенным образом подготовить документ, а после загрузить его в макет двоичных данных в 1С.
Для корректной работы данного способа необходимо, чтобы на компьютере, где происходит формирование документа, был установлен MS Office. Также, документ формируется на клиенте, с тем чтобы вывести его на экран пользователю. Но возможно формирование и на сервере, если на сервере установлен Word – например, для прикрепления файлов к справочникам.

Подготовка шаблона Word

В документе Word можно вставлять поля специального типа DocVariables. Это можно сделать либо вставив соответствующий фрагмент текста, либо через графический интерфейс. На примере Word 2016, это делается через меню Вставка / Экспресс блоки/ Поле. В списке доступных полей нас интересует DocVariable. Указываем нужное имя и жмем ОК.

1С напечатать Word DocVariables

Для скрытия / отображения кодов полей в документе, жмем Alt + F9. Для экономии времени, можно просто копировать нужные поля и вставлять в нужные места документа. Чтобы создать новую переменную документа, достаточно просто в кавычках заменить имя.

1С сформировать Word

Формирование документа Word из 1С

После того, как шаблон готов, его нужно загрузить в виде макета с типом “Двоичные данные”. Это можно сделать в обработке, в общем макете, в справочнике и т.д. Рассмотрим на примере хранения макета в обработке.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *