0

Запрашиваемый номер семейства не существует word 2007

Делаю выгрузку из datagridview

в документ Word

с помощью этого кода:

Делаю объединение строк в первой и во второй колонке. Если убрать объединение ячеек в первой колонке, то всё работает как надо. Во второй колонке объединение происходит нормально, а на первой происходит ошибка – Запрашиваемый номер семейства не существует. По логике всё должно работать, но чё то не могу додумать что не так

На третьем цикле происходит ошибка

Маленький пример

Заголовок таблицы тот же. В итоге результат тот же, при объединении ячеек в соседней колонке так же пишет — запрашиваемый номер семейства не существует.

Почему так, не пойму

1 ответ 1

Объединяйте ячейки используя Cell.Merge :

Вы пытаетесь выделять диапазон не в таблице, а в документе Word и объединять все ячейки в нем. Ошибка возникает при вызове метода Merge . Видимо диапазон некорректно отрабатывает.

Немного о примере

Ошибка происходит при объединении ячеек. Поэтому первый шаг при построении примера выполнить эту операцию отдельно от остальной логики. Для этого создадим документ в котором будет таблица с одной ячейкой и попробуем объединить:

Этот код приведет к ошибке и мы уже получили легковоспроизводимый пример который можно запустить в консольном приложении. Но его можно улучшить. Для этого можно уточнить какое именно свойство/метод вызывает исключение. Сделать это можно прочитав трассировку стека по ошибке:

Видно, что ошибка происходит в методе Merge . Выделим это в примере:

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

С таким примером Вы получите ответ гораздо быстрее.

Содержание

Функционирование

MS Word – текстовый процессор. Обычно входит в состав пакета офисных программ MS Office. Система АвтоПарк поддерживает формирование отчетных форм с использованием MS Word. Обратите внимание: версия MS Word, пригодная для использования в Системе АвтоПарк – не ниже MS Word 2000.

Данные в Word АвтоПарк передаёт путём создания в документе набора переменных и присваивания им значений. Для управления отображением данных в шаблоне документа используются поля. Более подробно о том, что такое поля и переменные документа, смотрите в справочной системе Word. Начальные сведения содержатся в статьях "О полях", "Коды полей: DOCVARIABLE".

Разрабатываемые и поддерживаемые разработчиком шаблоны находятся в каталогах:

  • AutoPark$_LIBDOT – системные шаблоны
  • AutoParkDOT – локальные шаблоны
Читайте также:  Вред сотовых вышек для здоровья

Именование переменных документа

Основные принципы на примерах.

  • Staff.TSN, Post.Name – переменные документа имеют названия в соответствии с наименованием полей файлов базы данных. Список файлов и их полей открывается в АвтоПарке по комбинации клавиш Ctrl+F10.
  • Officer.Sort.Name – переменные могут содержать в наименовании, как наименование основного файла, так и файла – справочника (Поле Name из записи файла Sort, соответствующей записи файла Officer).
  • OrderL[2].Sort.Name – в случае, когда подготавливаются переменные по нескольким записям в файле БД, после имени файла добавляется индекс (наименование сектора, соответствующего второй строке приказа). Важно знать: строки нумеруются, начиная с 0.
  • Staff.BegDate.Month, Man.Name.Short – в переменной содержится модифицированное значение поля (только месяц из даты приёма, ФИО с инициалами вместо имени и отчества).
  • OwnFirm.RegName, OwnFirm.AcntName – всегда создаётся набор переменных с префиксом OwnFirm, содержащих различные данные о Вашем предприятии (Наименование предприятия, ФИО главного бухгалтера).
  • Math.BalCost – если значение переменной не берётся из какого-то конкретного поля, а вычисляется, то наименование передаёт смысл значения (балансовая стоимость объекта).

Многострочные части

Если отчётная форма содержит одну или несколько многострочных частей, следует учитывать следующие особенности: Подлежащая тиражированию часть документа должна быть помечена закладкой. Имя закладки определено в программе подготовки документа. В наименовании переменных при тиражировании индексом строки считается первый встречающийся нулевой индекс в наименовании переменных. При добавлении каждой новой строки индекс увеличивается на единицу.

Если тиражируемая часть является набором строк таблицы Word, закладкой должны быть помечены и символы окончания строки (в режиме отображения непечатных символов выглядит как ¤).

Если предусмотренную шаблоном таблицу требуется продублировать или разбить на две (например, часть столбцов перенести на другую страницу), для каждой из таблиц должна быть установлена закладка. Дополнительным закладкам следует дать имя основной закладки с добавлением "_1" или "_2".

Изображения

Если в отчётной форме предусмотрена вставка изображений (например, фотография работника), то место для вставки изображения отмечается закладкой. В случае, если одно изображение требуется вставить в несколько мест документа, то дополнительным закладкам следует дать имя основной закладки с добавлением цифры от 1 до 9 (например, если АвтоПарк выводит фото работника в шаблон в закладку "Face", то добавление закладок "Face1", "Face7" приведёт к выводу такого же фото и в места, отмеченные этими закладками).

Режимы работы с Word

Разные режимы применяются на разных этапах работы с шаблонами. Изменяется режим через пункт меню "Сервис – Администратор – Настройка системного окружения – . для работы с шаблонами MS Word – Разработка шаблонов CtrlW". Изменение режима доступно только АДМИНИСТРАТОРУ.

Существует три режима работы с Word:

Обычный режим

Используется для подготовки документов на основе шаблона. При старте АвтоПарка режим всегда обычный.

При создании отчётной формы АвтоПарк выполняет следующие операции: создаёт документ Word на основе соответствующего шаблона, создаёт в документе необходимые переменные, присваивает им значения, обновляет все поля документа, отправляет документ на печать либо (в зависимости от выбора пользователя) сохраняет его и открывает для редактирования.

Также в некоторых документах производится тиражирование многострочной части и вставка графических изображений.

Режим разработки шаблона

Используется для облегчения модификации пользовательских шаблонов. Отличается от обычного тем, что создаёт резервную копию шаблона, открывает сам шаблон, а не документ на его основе, выгружает все переменные, а не только необходимые, а также не тиражирует многострочные части и не вставляет графические изображения.

Читайте также:  Игры которые нельзя пропустить

Открытый шаблон содержит все переменные, подготавливаемые АвтоПарком. Для того, чтобы определить наименование именно той переменной, которую Вы желали бы вывести в отчётной форме, прежде всего стоит посмотреть в шаблонах, подобных разрабатываемому. Кроме того, во время разработки шаблона можно выбрать режим с выгрузкой полного списка переменных этого шаблона. Если переменной, которую Вы желали бы вывести в отчётной форме, нет в шаблоне, следует оформить ТТ на формирование такой переменной.

Особенности

  1. В режиме разработки графические изображения в шаблон не выгружаются и, соответственно, не видны.

Публикация шаблона

Используется для окончательного оформления пользовательского шаблона, подготовленного в режиме разработки или другим способом. Внимание! Работа в "обычном режиме" (печать на принтер, печать в файл) с неопубликованным пользовательским шаблоном невозможна!

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

С выбранного шаблона делается резервная копия, затем удаляются неиспользуемые в шаблоне переменные, значения используемых заменяются на символы "X" и "0", после чего шаблон сохраняется, а режим работы с Word возвращается в прежнее значение.

Повторно опубликовать шаблон безвредно.

Как заказать новый Word-отчёт

  • В случае если Вам необходим какой-либо отчёт, его необходимо заказать, используя стандартную форму оформления технического требования.
  • Если по каким-либо причинам Вам необходимо, чтобы отчёт готовился с использованием MS Word, следует отразить данный факт в ТТ. В ТТ следует отразить, какие данные должны быть выгружены в Word, а также приложить к нему проект шаблона отчёта, выполненный в виде шаблона Word.

Создание пользовательского шаблона

Существует возможность пользователю самостоятельно дорабатывать и изменять готовую отчетную форму MS-Word. При использовании такого шаблона АвтоПарк подготавливает набор переменных документа в обычном режиме, но формирование выходной формы происходит на основе пользовательского шаблона. Это позволяет использовать нестандартные формы вместо подготавливаемых АвтоПарком.

Может быть две причины самостоятельной модификации выходных форм:

  1. Данная форма изначально изготавливается самим пользователем (к этому относятся, например, шаблоны текстов договоров, дополнительных соглашений и т.п.). Согласно п. 2.9 договора на сопровождение системы АвтоПарк: "При реализации готовой настраиваемой или свободной выходной формы, Исполнитель, кроме изменений прикладного программного обеспечения, реализует также образец выходной формы стандартными программными средствами. Дальнейшие технические требования по изменению выходной формы, реализованной как готовая настраиваемая или свободная, могут выдаваться Заказчиком только в части факторов, которые определяются программным обеспечением Системы, в соответствии с положениями пункта 1.2.12.4 настоящего договора. Изменения таких выходных форм в части факторов, которые определяются стандартными программными средствами, в стоимость настоящего договора не входят". Это означает, что пользователи самостоятельно разрабатывают собственные формы на основании предоставленных образцов, но в случае, например, изменения внутренней структуры формы, разработчики окажут помощь в поддержке работоспособности таких форм.
  2. Пользователь самостоятельно вносит изменения в стандартный вид выходной формы. Чаще всего такие формы изготавливаются из-за того, что на предприятии принят вид формы, либо не отвечающий требованиям нормативных документов, либо содержащий лишнюю и ненужную в этих формах информацию (например, если на Вашем предприятии используется форма приказа о приёме на работу, отличная от стандартной формы T-1).
Читайте также:  Гбу мос электронный дневник

Следует осознавать, что в случае изменения состава стандартно подготавливаемых переменных или необходимого вида отчётной формы может возникать необходимость вносить изменения в пользовательский шаблон. В случае использования собственного шаблона это придётся делать самостоятельно, причем "внезапно". Исходя из этого, изготавливать собственные версии стандартных выходных форм следует очень аккуратно.

Некоторые особенности использования MS Word

Для корректной автоматической нумерации страниц в формах, при печати необходимо выставить "галочку" в меню "Сервис" – "Параметры", закладка "Печать", группа "Режим", пункт "обновлять поля".

Известные проблемы

При выгрузке в Word возникает ошибка "Запрашиваемый номер семейства не существует"

  • Обычно это возникает в случае, когда до выполнения операции на компьютере случилось ненормальное завершение MS Word (Word "вылетел" в процессе работы, либо выгрузка из АвтоПарк была прервана пользователем). Исправляется перезагрузкой компьютера.
  • В случае, когда ошибка проявляется всегда и перезагрузка не помогает, проблема в самом MS Word. Исправление: если MS Office версии 2002 и 2003 – может помочь установка Service Pack 3, иначе переустановка MS Office.

При выгрузке в Word возникает ошибка "Приложению Word не удалось запустить конвертер mswrd632"

  • Следует выполнить рекомендации корпорации Microsoft, изложенные в этой статье.

При выгрузке в Word появляется ошибка "Вызов был отклонен"

  • В уже открытом у вас Word был активный диалог. Закрыть диалог в Word и попробовать снова.
  • Не хватило системных ресурсов (много уже открытых Excel и Word). Позакрывать и повторить попытку.
  • Сбой в Windows или Word. Перезагрузить компьютер, если не помогает – обратиться к администратору.

При выгрузке в Word появляется ошибка "Неверно указана единица измерения"

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

Для устранения ошибки: открываем Microsoft Office Word далее Сервис – Настройка – Команды – Упорядочить команды – выбрать Панель инструментов – в ней Форматирование – в Элементах встать на Межстрочный интервал – Удалить – Закрыть – Закрыть – закрыть Microsoft Office Word.

Собственно есть документ Word, в котором записан некоторый текст и несколько таблиц. Требуется изменить стили текста и таблиц. И если изменением текста всё понятно и вполне даже получается, то вот с таблицами полный ноль.

Пытаюсь получить таблицу так:

Но выдаёт ошибку:

System.Runtime.InteropServices.COMException: "Запрашиваемый номер семейства не существует."

  • Вопрос задан более года назад
  • 104 просмотра

совет – включите запись макросов, проделайте манипуляции с таблицей, те самые что хотите автоматизировать, завершите запись, откройте VBA и переведите с VB на шарп, то что будет в записи

довольно универсальный рецепт, при работе с офисом

ps правда перевод не всегда абсолютно очевиден.. но можно достаточно быстро освоится

admin

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

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