(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Visual Basic .NET: Взаимодействие с Microsoft Word 2000 и выше (исходники)

Источник: KByte
Хабибулин А.

Эта статья будет полезна только тем людям, у которых установлен Microsoft Word 2000 или выше! Мы научимся делать всё возможное с документами MS WORD при помощи VB 2003/2005 .NET.

Подключение библиотеки к проекту

  1. Создайте проект (Windows Application) В поле Name(Имя) введите Word (можно любое др. имя)
  2. В меню Project (Проект) выберите меню Add Reference (Добавить ссылку)
  3. В диалоговом окне Add Reference перейдите на вкладку COM и выберите в списке Microsoft Word 9.0 Object Library (или другую версию, это зависит от того, какая версия MS Word у вас установлена на компьютере), жмёте клавишу Enter
  4. Всё, библиотека Word уже включена в наш проект!

Работаем с MS Word

  1. Всё необходимое для работы мы уже сделали теперь для удобства работы с библиотекой Word необходимо ввести в General Declarations код:

Imports Word 'Импортируем пространство имён
Public Class Form1
End Class
  1. Создадим переменную для управления Word`ом:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Private Sub Form1_Load(ByVal sender As System.Object, _
                         ByVal e As System.EventArgs) Handles MyBase.Load
    applicationWord = New Microsoft.Office.Interop.Word.Application
  End Sub
End Class

После выполнения кода, открывается приложение MS Word, но оно скрыто, для того, чтобы сделать его видимым впишите в событие Form_Load следующий код:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Private Sub Form1_Load(ByVal sender As System.Object, _
                         ByVal e As System.EventArgs) Handles MyBase.Load
    applicationWord = New Microsoft.Office.Interop.Word.Application
    applicationWord.Visible = True
  End Sub
End Class

Но управлять содержимым документа MS Word с помощью переменной applicationWord, для управления содержимым документа создадим ещё одну переменную:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Dim documentWord As Microsoft.Office.Interop.Word.Document 'Объявляем переменную для работы с текстом и др. возможностями документа MS Word, 
например: Создаём таблицы; Меняем размер, цвет шрифта; и.т.д. Private Sub Form1_Load(ByVal sender As System.Object, _ ByVal e As System.EventArgs) Handles MyBase.Load 'Запускаем приложение MS Word applicationWord = New Microsoft.Office.Interop.Word.Application 'Делаем приложение MS Word видимым для пользователя (это делать не обязательно) applicationWord.Visible = True End Sub End Class
  1. Теперь создадим документ, дял этого введём следующий код:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Private Sub Form1_Load(ByVal sender As System.Object, _
                         ByVal e As System.EventArgs) Handles MyBase.Load
    'Запускаем приложение MS Word
    applicationWord = New Microsoft.Office.Interop.Word.Application
    'Делаем приложение MS Word видимым для пользователя (это делать не обязательно)
    applicationWord.Visible = True
    'Объявляем переменную для работы с текстом и др. возможностями документа MS Word, например: Создаём таблицы; Меняем размер, цвет шрифта; и.т.д.
    Dim documentWord As Microsoft.Office.Interop.Word.Document = applicationWord.Documents.Add
  End Sub
End Class
  1. Всё, документ создан, теперь, попробуем написать в нём что-либо. Для этого воспоьзуемся объектом Range, который находится в переменной documentWord.Range, попробуем вписать туда имя вашего компьютера (только для VB 2005 .Net), для этого впишем следующий код:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Private Sub Form1_Load(ByVal sender As System.Object, _
                         ByVal e As System.EventArgs) Handles MyBase.Load
    'Запускаем приложение MS Word
    applicationWord = New Microsoft.Office.Interop.Word.Application
    'Делаем приложение MS Word видимым для пользователя (это делать не обязательно)
    applicationWord.Visible = True
    'Объявляем переменную для работы с текстом и др. возможностями документа MS Word, например: Создаём таблицы; Меняем размер, цвет шрифта; и.т.д.
    Dim documentWord As Microsoft.Office.Interop.Word.Document = applicationWord.Documents.Add
    'Range - это, можно сказать, тело документа имеет все свойства для работы с текстом в документе MS Word
    With documentWord.Range
      'Устанавливаем имя шрифта
      .Font.Name = "Arial"
      'Устанавливаем цвет шрифта
      .Font.Color = Microsoft.Office.Interop.Word.WdColor.wdColorBlack
      .Font.Size = "12" 'Устанавливаем размер шрифта
      'меняем текст документа на традиционную надпись "Привет Мир!!!"
      .Text = My.User.Name
    End With
  End Sub
End Class
  1. Ещё немного об объекте Range. Допустим, нам необходимо вставить текст перед тем текстом который у нас уже есть в документе, или после этого текста, даже может внутри текста, для этого есть дополнительные свойства объекта Range, ниже я привёл примеры вставки текста до, после и внутри уже существующего текста:

Imports Word 'Импортируем пространство имён
Public Class Form1
  Dim applicationWord As Microsoft.Office.Interop.Word.Application
  Private Sub Form1_Load(ByVal sender As System.Object, _
                         ByVal e As System.EventArgs) Handles MyBase.Load
    'Запускаем приложение MS Word
    applicationWord = New Microsoft.Office.Interop.Word.Application
    'Делаем приложение MS Word видимым для пользователя (это делать не обязательно)
    applicationWord.Visible = True
    'Объявляем переменную для работы с текстом и др. возможностями документа MS Word, например: Создаём таблицы; Меняем размер, цвет шрифта; и.т.д.
    Dim documentWord As Microsoft.Office.Interop.Word.Document = applicationWord.Documents.Add
    'Range - это, можно сказать, тело документа имеет все свойства для работы с текстом в документе MS Word
    With documentWord.Range
      .Font.Name = "Arial" 'Устанавливаем имя шрифта
      'Устанавливаем цвет шрифта
      .Font.Color = Microsoft.Office.Interop.Word.WdColor.wdColorBlack
      .Font.Size = "12" 'Устанавливаем размер шрифта
      .Text = "KByte.ru"
    End With
    documentWord.Range(0, 0).Text = "Вас Приветствует " 'До существующего текста
    documentWord.Range(Len("KByte.ru") + Len("Вас Приветствует "), Len("KByte.ru") + Len("Вас Приветствует ")).Text = ": Привет!" 'После Существующего текста
  End Sub
End Class
  1. Печать содержимого документа производится пр помощи этого кода:

documentWord.PrintOut

  1. Предварительный просмотр перед печатью производится пр помощи этого кода:

documentWord.PrintPreview()

  1. Сохранять документ можнно при помощи этого кода:

documentWord.SaveAs(FileName:="C:\MyDocument.doc")

  1. Выход из MS Word осуществляется при помощи этого кода:

applicationWord.Quit()

Вот в принципе и всё!



 Распечатать »
 Правила публикации »
  Обсудить материал в конференции Microsoft »
Обсудить материал в конференции Дизайн, графика, обработка изображений »
Написать редактору 
 Рекомендовать » Дата публикации: 17.03.2007 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft SQL Server Standard Edition 2017 Sngl OLP 1License NoLevel
Microsoft Office 365 для Дома 32-bit/x64. 5 ПК/Mac + 5 Планшетов + 5 Телефонов. Подписка на 1 год.
Microsoft System Center Standard Core Sngl License/Software Assurance Pack OLP 2Licenses NoLevel CoreLic Qualified
Microsoft Visual Studio Professional 2017 Sngl OLP 1License NoLevel
Microsoft Visual Studio Professional 2017 Russian Academic OLP 1License NoLevel
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
OS Linux для начинающих. Новости + статьи + обзоры + ссылки
Компьютерный дизайн - Все графические редакторы
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
Обсуждения в форумах
Пишу программы на заказ профессионально (2161)
Пишу программы на заказ на языках Pascal (численные методы, списки, деревья, прерывания) под...
 
Настройка меню "Пуск" Windows 7 при помощи реестра (1)
Скажите пожалуйста, а как можно закрепить ярлыки программ с помощью твиков реестра в левой части...
 
Пишу программы на заказ для студентов (170)
Пишу для студентов на с, с++, паскаль в средах ms visual studio, qt, builder, borland c, delphi....
 
Программы Delphi на заказ (233)
Пишу программы в среде Delphi на заказ http://bddelphi.ucoz.ru/
 
Программирование AVR микроконтроллеров (8)
Разрабатываю устройства на AVR и пишу программы.
 
 
 



    
rambler's top100 Rambler's Top100