(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()

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



 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 17.03.2007 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft Office 365 для Дома 32-bit/x64. 5 ПК/Mac + 5 Планшетов + 5 Телефонов. Подписка на 1 год.
Microsoft 365 Business Basic (corporate)
Microsoft 365 Apps for business (corporate)
Microsoft 365 Business Standard (corporate)
Microsoft Windows Professional 10, Электронный ключ
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Мир OLAP и Business Intelligence: новости, статьи, обзоры
Новые программы для Windows
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100