Вставка таблицы ворд в inventory
Настоящая документация является предварительной и может быть изменена. В этой статье показано, как использовать классы в пакете Пакет Open XML SDK 2.5 для Office для вставки таблицы в текстовый документ программными средствами.
Для компиляции кода, представленного в этом разделе, требуются следующие директивы сборки.
Получение объекта WordprocessingDocument
Чтобы открыть существующий документ, необходимо создать экземпляр класса WordprocessingDocument, как показано в следующей инструкции using. В той же инструкции откройте файл текстового документа, указав путь к файлу в методе Open и установив для логического параметра значение true, чтобы разрешить изменение документа.
Инструкцию using рекомендуется использовать вместо традиционной последовательности .Create, .Save, .Close. Это позволяет обеспечить автоматический вызов метода Dispose (внутреннего метода, используемого пакетом SDK Open XML для очистки ресурсов) при достижении закрывающей скобки. Блок, следующий за инструкцией using, создает область для объекта, создаваемого или именуемого в инструкции using, в данном случае doc. Так как класс WordprocessingDocument в пакете SDK Open XML автоматически сохраняет и закрывает объект как часть реализации System.IDisposable, а также поскольку метод Dispose вызывается автоматически при выходе из блока, не нужно явно вызывать методы Save и Close, если используется инструкция using.
Структура таблицы
Базовая структура документа WordProcessingML состоит из элементов document и body. За ними следуют один или более элементов уровня блока, таких как p, который представляет абзац. Абзац содержит один или несколько элементов r. Элемент r означает пробег, область текста с общим набором свойств, таких как форматирование. Пробег состоит из одного или нескольких элементов t. Элемент t содержит текстовый диапазон. В этом примере документ должен содержать таблицу. Таблица представляет собой набор абзацев (и другого содержимого на уровне блоков), распределенных по строкам и столбцам. Таблицы в документе WordprocessingML определяются с помощью элемента tbl, аналогичного HTML-тегу таблицы. Рассмотрим пустую таблицу с одной ячейкой (то есть с одной строкой и одним столбцом) и границей толщиной в 1 точку со всех сторон. Эта таблица представлена следующим сегментом разметки WordprocessingML.
Для этой таблицы задаются следующие свойства: ширина, составляющая 100 % от ширины страницы (элемент tblW), набор границ таблицы (элемент tblBorders), сетка таблицы, определяющая набор общих вертикальных границ внутри таблицы (элемент tblGrid) и единственная строка таблицы (элемент tr).
Как работает пример кода
В примере кода после открытия документа в операторе using создается новый объект Table. Затем создается объект TableProperties и задаются данные о его границе. Класс TableProperties содержит перегруженный конструктор TableProperties(), принимающий массив params типа OpenXmlElement. В коде этот конструктор используется для создания экземпляра объекта TableProperties с объектами BorderType для каждой границы. При этом создается экземпляр каждого из объектов BorderType и задается их значение с помощью инициализаторов объектов. После создания экземпляра добавьте объект TableProperties в таблицу.
Код создает строку таблицы. В этом разделе кода применяются перегруженные методы Append[]), классы которых являются производными от наследника OpenXmlElement. Методы Append позволяют добавить один элемент или часть дерева XML в конец списка дочерних элементов под указанным родительским элементом. Затем код создает объект TableCell, который представляет отдельную ячейку таблицы, и задает свойство ширины ячейки таблицы с помощью объекта TableCellProperties, а также содержимое ячейки ("Hello, World!") с помощью объекта Text. В схеме Open XML Wordprocessing элемент абзаца ( ) содержит элементы пробега ( ), которые, в свою очередь, содержат элементы текста ( ). Чтобы вставить текст в ячейку таблицы, используя API, нужно создать объект Paragraph, который содержит объект Run, включающий объект Text с текстом, который нужно вставить в ячейку. Затем объект Paragraph добавляется к объекту TableCell. При этом создается нужная структура XML для вставки текста в ячейку. После этого TableCell добавляется к объекту TableRow.
Затем в коде создается вторая ячейка таблицы. В последнем разделе кода создается еще одна ячейка таблицы с помощью перегруженного конструктора TableCell, TableCell(String), который принимает свойство OuterXml существующего объекта TableCell в качестве единственного аргумента. После создания второй ячейки код добавляет объект TableCell к TableRow, TableRow — к Table, а Table — к объекту Document.
Пример кода
В следующем примере кода показано, как создать таблицу, задать ее свойства, вставить текст в ячейку таблицы, скопировать ячейку и затем вставить таблицу в текстовый документ. Метод CreateTable можно вызвать следующим образом.
После запуска программы откройте файл "Word10.docx" и проверьте, вставлена ли таблица.
Автор:
Общие таблицы
Пустые таблицы с заданным числом строк и столбцов. В таблицах используется стиль и слой объекта, заданные для элемента "Общая таблица" в параметрах объекта по умолчанию. Размер таблицы по умолчанию — четыре столбца и десять строк, если в настройках столбцов по умолчанию в активном стиле таблицы не указано другое число столбцов. В этом случае по умолчанию будет использовано число столбцов, указанное в стиле.
Общие таблицы, связанные с внешними электронными таблицами, используют в качестве источников данных файлы XLS, XLSX или CSV.
Таблицы конфигураций
Отображение данных конфигураций параметрической детали или сборки.
Можно добавить пользовательские свойства, доступные в исходном файле, или создать новые пользовательские свойства. Вновь созданные свойства применимы только как столбцы в таблице.
В таблицах конфигураций используется стиль объекта и слой, заданные для элемента "Таблица конфигураций" в параметрах объекта по умолчанию. По умолчанию все основные столбцы включаются в таблицу.
Таблицы сгибов
Отображение данных о сгибе деталей из листового металла. Выберите в качестве исходного файла деталь из листового металла или вид чертежа детали из листового металла (соответствующий исходный файл выбирается автоматически). Если выбранный исходный файл содержит несколько источников для данных таблицы, выберите соответствующий источник в списке.
В таблицах используется стиль объекта и слой, заданные для элемента "Таблица сгибов" в параметрах объекта по умолчанию. Можно выбрать тип идентификатора сгиба: буквенный или числовой.
Сведения о создании таблиц сгибов см. в разделе Процедура создания таблицы сгибов.
Советы
- Верхний левый угол таблицы можно привязать к выбранному виду геометрии, рамке или основной надписи.
- При изменении размера листа измените положение таблицы.
Обновление таблицы с помощью внешнего источника данных
- Если в таблице используются значения, указанные для параметрической детали, сборки или схемы на основе параметрической сборки, к ней автоматически применяются обновления соответствующей таблицы создания, используемой в модели.
- Если в таблице используются данные файла .xls, .xlsx или .csv, щелкните правой кнопкой мыши и выберите в контекстном меню команду "Обновить" для обновления таблицы. Изменения в тексте отображаются синим полужирным шрифтом.
- Файлы панели настройки связаны с файлом .csv.
Копирование таблиц
Таблицы можно копировать на другой лист чертежа или чертеж.
Таблицы можно переносить с одного листа чертежа на другой путем перетаскивания.
Замечания:
- Копия таблицы вставляется в том же месте на листе, что и исходная таблица.
- Скопировать таблицу и вставить ее на тот же лист чертежа невозможно.
- Если таблица связана с внешним источником (например, с файлом .xls), ссылка сохраняется для копии таблицы. Таким образом, исходная таблица и копия имеют один источник.
- Таблицы можно копировать только в рамках одного сеанса Autodesk Inventor.
Стиль таблицы по умолчанию
Активные стили, назначенные объектам таблиц в параметрах объектов по умолчанию, определяют представление таблицы в чертеже по умолчанию. Во время создания или размещения таблицы стиль, на который она ссылается, может быть изменен. Для этого выберите другой стиль таблицы в соответствующем списке на вкладке "Пояснение".
Чтобы изменить параметры по умолчанию для таблиц, отредактируйте Стиль таблиц. Выберите вкладку "Управление" панель "Cтили и стандарты" Редактор стилей . В диалоговом окне "Редактор стилей и стандартов" нажмите "Таблица" и измените значения. Измененные значения действительны только для текущего документа, если не щелкнуть вкладку "Управление" панель "Стили и стандарты" Сохранить , чтобы заменить стиль из библиотеки. При этом изменения распространяются на все документы, использующие данный стиль.
Автор:
Описание характеристик таблиц, их элементов, а также советы по управлению таблицами в чертежах.
Общие таблицы
Пустые таблицы с заданным числом строк и столбцов. В таблицах используется стиль и слой объекта, заданные для элемента "Общая таблица" в параметрах объекта по умолчанию. Размер таблицы по умолчанию — четыре столбца и десять строк, если в настройках столбцов по умолчанию в активном стиле таблицы не указано другое число столбцов. В этом случае по умолчанию будет использовано число столбцов, указанное в стиле.
Общие таблицы, связанные с внешними электронными таблицами, используют в качестве источников данных файлы XLS, XLSX или CSV.
Таблицы конфигураций
Отображение данных конфигураций параметрической детали или сборки.
Можно добавить пользовательские свойства, доступные в исходном файле, или создать новые пользовательские свойства. Вновь созданные свойства применимы только как столбцы в таблице.
В таблицах конфигураций используется стиль объекта и слой, заданные для элемента "Таблица конфигураций" в параметрах объекта по умолчанию. По умолчанию все основные столбцы включаются в таблицу.
Таблицы сгибов
Отображение данных о сгибе деталей из листового металла. Выберите в качестве исходного файла деталь из листового металла или вид чертежа детали из листового металла (соответствующий исходный файл выбирается автоматически). Если выбранный исходный файл содержит несколько источников для данных таблицы, выберите соответствующий источник в списке.
В таблицах используется стиль объекта и слой, заданные для элемента "Таблица сгибов" в параметрах объекта по умолчанию. Можно выбрать тип идентификатора сгиба: буквенный или числовой.
Сведения о создании таблиц сгибов см. в разделе Процедура создания таблицы сгибов.
Советы
- Верхний левый угол таблицы можно привязать к выбранному виду геометрии, рамке или основной надписи.
- При изменении размера листа измените положение таблицы.
Обновление таблицы с помощью внешнего источника данных
- Если в таблице используются значения, указанные для параметрической детали, сборки или схемы на основе параметрической сборки, к ней автоматически применяются обновления соответствующей таблицы создания, используемой в модели.
- Если в таблице используются данные файла .xls, .xlsx или .csv, щелкните правой кнопкой мыши и выберите в контекстном меню команду "Обновить" для обновления таблицы. Изменения в тексте отображаются синим полужирным шрифтом.
- Файлы панели настройки связаны с файлом .csv.
Копирование таблиц
Таблицы можно копировать на другой лист чертежа или чертеж.
Таблицы можно переносить с одного листа чертежа на другой путем перетаскивания.
- Копия таблицы вставляется в том же месте на листе, что и исходная таблица.
- Скопировать таблицу и вставить ее на тот же лист чертежа невозможно.
- Если таблица связана с внешним источником (например, с файлом .xls), ссылка сохраняется для копии таблицы. Таким образом, исходная таблица и копия имеют один источник.
- Таблицы можно копировать только в рамках одного сеанса Autodesk Inventor.
Стиль таблицы по умолчанию
Активные стили, назначенные объектам таблиц в параметрах объектов по умолчанию, определяют представление таблицы в чертеже по умолчанию. Во время создания или размещения таблицы стиль, на который она ссылается, может быть изменен. Для этого выберите другой стиль таблицы в соответствующем списке на вкладке "Пояснение".
Чтобы изменить параметры по умолчанию для таблиц, отредактируйте Стиль таблиц. Выберите вкладку "Управление" панель "Cтили и стандарты" Редактор стилей . В диалоговом окне "Редактор стилей и стандартов" нажмите "Таблица" и измените значения. Измененные значения действительны только для текущего документа, если не щелкнуть вкладку "Управление" панель "Стили и стандарты" Сохранить , чтобы заменить стиль из библиотеки. При этом изменения распространяются на все документы, использующие данный стиль.
Коллекция Tables является членом классов Document, Document, Selection и Range. Это означает, что таблицу можно создать в любом из их контекстов. Для добавления таблицы в указанном диапазоне можно использовать метод Add коллекции Tables.
Применимо к: Сведения в этом разделе относятся к - проектам уровня документа и добавлению VSTO - в проектах для Word. Дополнительные сведения см. в разделе доступность функций по типам приложений Office и проектов.
Создание таблиц в настройках уровня документа
Добавление таблицы в документ
Для добавления таблицы, состоящей из трех строк и четырех столбцов, в начало документа используйте метод Add.
Чтобы использовать следующий пример кода, выполните его из класса ThisDocument в своем проекте.
При создании таблицы она автоматически добавляется в коллекцию Tables ведущего элемента Document. Затем на таблицу можно ссылаться по номеру ее элемента с помощью свойства Item[], как показано в следующем коде.
Ссылка на таблицу по номеру элемента
Используйте свойство Item[] и укажите номер элемента таблицы, на которую необходимо ссылаться.
Чтобы использовать следующий пример кода, выполните его из класса ThisDocument в своем проекте.
Каждый объект Table также имеет свойство Range, которое позволяет настроить атрибуты форматирования.
Применение стиля к таблице
Для применения одного из встроенных стилей Word к таблице используйте свойство Style.
Чтобы использовать следующий пример кода, выполните его из класса ThisDocument в своем проекте.
создание таблиц в VSTO надстройках
Добавление таблицы в документ
Для добавления таблицы, состоящей из трех строк и четырех столбцов, в начало документа используйте метод Add.
Следующий пример кода добавляет таблицу в активный документ. Чтобы использовать этот пример, запустите код из класса ThisAddIn в своем проекте.
При создании таблицы она автоматически добавляется в коллекцию Tables в Document. Затем на таблицу можно ссылаться по номеру ее элемента с помощью свойства Item[], как показано в следующем коде.
Ссылка на таблицу по номеру элемента
Используйте свойство Item[] и укажите номер элемента таблицы, на которую необходимо ссылаться.
В следующем примере кода используется активный документ. Чтобы использовать этот пример, запустите код из класса ThisAddIn в своем проекте.
Каждый объект Table также имеет свойство Range, которое позволяет настроить атрибуты форматирования.
Применение стиля к таблице
Для применения одного из встроенных стилей Word к таблице используйте свойство Style.
В следующем примере кода используется активный документ. Чтобы использовать этот пример, запустите код из класса ThisAddIn в своем проекте.
Чаще приходится переносить таблицу из программы Microsoft Excel в приложение Word, чем наоборот, но все-таки случаи обратного переноса тоже не столь редки. Например, иногда требуется перенести таблицу в Excel, сделанную в Ворде, для того чтобы, воспользовавшись функционалом табличного редактора, рассчитать данные. Давайте выясним, какие способы переноса таблиц в данном направлении существуют.
Обычное копирование
Самый простой способ переноса таблицы выполняется методом обычного копирования. Для этого, выделяем таблицу в программе Word, кликаем правой кнопкой мыши по странице, и в появившемся контекстном меню выбираем пункт «Копировать». Можно, вместо этого, нажать на кнопку «Копировать», которая размещена вверху на ленте. Ещё один вариант предполагает, после выделения таблицы, нажатие на клавиатуре клавиш Ctrl+C.
Таким образом, мы скопировали таблицу. Теперь нам нужно вставить её на лист Excel. Запускаем программу Microsoft Excel. Кликаем по ячейке в том месте листа, где хотим разместить таблицу. Нужно заметить, что эта ячейка станет крайней левой верхней ячейкой вставляемой таблицы. Именно из этого нужно исходить, планируя размещения таблицы.
Кликаем правой кнопкой мыши по листу, и в контекстном меню в параметрах вставки выбираем значение «Сохранить исходное форматирование». Также, можно вставить таблицу, нажав на кнопку «Вставить», расположенную на левом краю ленты. Или же, существует вариант набрать на клавиатуре комбинацию клавиш Ctrl+V.
После этого, таблица будет вставлена на лист Microsoft Excel. Ячейки листа могут не совпадать с ячейками вставленной таблицы. Поэтому, чтобы таблица выглядела презентабельно, их следует растянуть.
Импорт таблицы
Также, существует более сложный способ переноса таблицы из Word в Excel, путем импорта данных.
Открываем таблицу в программе Word. Выделяем её. Далее, переходим во вкладку «Макет», и в группе инструментов «Данные» на ленте жмем на кнопку «Преобразовать в текст».
Открывается окно параметров преобразования. В параметре «Разделитель» переключатель должен быть выставлен на позицию «Знак табуляции». Если это не так, переводим переключатель в данную позицию, и жмем на кнопку «OK».
Переходим во вкладку «Файл». Выбираем пункт «Сохранить как…».
В открывшемся окне сохранения документа, указываем желаемое место расположения файла, который собираемся сохранить, а также присваиваем ему название, если название по умолчанию не удовлетворяет. Хотя, учитывая, что сохраненный файл будет являться лишь промежуточным для переноса таблицы из Word в Excel, особого смысла менять наименование нет. Главное, что нужно сделать – это в поле «Тип файла» установить параметр «Обычный текст». Жмем на кнопку «Сохранить».
Открывается окно преобразования файла. Тут делать никаких изменений не нужно, а только следует запомнить кодировку, в которой вы сохраняете текст. Жмем на кнопку «OK».
После этого, запускаем программу Microsoft Excel. Переходим во вкладку «Данные». В блоке настроек «Получить внешние данные» на ленте жмем на кнопку «Из текста».
Открывается окно импорта текстового файла. Ищем тот файл, который сохранили ранее в Ворде, выделяем его, и жмем на кнопку «Импорт».
После этого, открывается окно Мастера текстов. В настройках формата данных указываем параметр «С разделителями». Устанавливаем кодировку, согласно той, в которой вы сохраняли текстовый документ в Ворде. В большинстве случаев это будет «1251: Кириллица (Windows)». Жмем на кнопку «Далее».
В следующем окне в настройке «Символом-разделителем является» устанавливаем переключатель в позицию «Знак табуляции», если он не установлен по умолчанию. Жмем на кнопку «Далее».
В последнем окне Мастера текста можно отформатировать данные в столбцах, с учетом их содержимого. Выделяем конкретный столбец в Образце разбора данных, а в настройках формата данных столбца выбираем один из четырёх вариантов:
- общий;
- текстовый;
- дата;
- пропустить столбец.
Подобную операцию делаем для каждого столбца в отдельности. По окончанию форматирования, жмем на кнопку «Готово».
После этого, открывается окно импорта данных. В поле вручную указываем адрес ячейки, которая будет являться крайней верхней левой ячейкой вставленной таблицы. Если вы затрудняетесь это сделать вручную, то жмем на кнопку справа от поля.
В открывшемся окне, просто выделяем нужную ячейку. Затем, кликаем по кнопке справа от введенных в поле данных.
Возвратившись в окно импорта данных, жмем на кнопку «OK».
Как видим, таблица вставлена.
Далее, при желании, можно установить для неё видимые границы, а также отформатировать стандартными способами Microsoft Excel.
Выше были представлены два способа переноса таблицы из Word в Excel. Первый способ намного проще второго, и на всю процедуру уходит гораздо меньше времени. В то же время, второй способ гарантирует отсутствие лишних символов, или смещения ячеек, что вполне возможно при переносе первым способом. Так что, определяться с вариантом переноса, нужно отталкиваясь от сложности таблицы, и её предназначения.
Мы рады, что смогли помочь Вам в решении проблемы.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Опишите, что у вас не получилось. Наши специалисты постараются ответить максимально быстро.
Читайте также: