13290

Автоматизация создания документов с помощью Visual Basic .NET

Лабораторная работа

Информатика, кибернетика и программирование

6. ЛАБОРАТОРНАЯ РАБОТА Автоматизация создания документов с помощью Visual Basic .NET 6.1. Цель работы: приобретение практических навыков автоматизации создания документов с помощью Visual Basic с использованием инструментальных средств интегрированной среды разработки Vis...

Русский

2013-05-11

101.5 KB

19 чел.

6. ЛАБОРАТОРНАЯ РАБОТА

Автоматизация создания документов с помощью Visual Basic .NET

6.1. Цель   работы:  приобретение   практических  навыков автоматизации создания документов с помощью Visual Basic с использованием инструментальных средств интегрированной среды разработки Visual Studio .NET. 

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

При подготовке к лабораторной работе рекомендуется изучить  современные технологии программирования, базирующиеся на платформе .NET. Этот материал можно найти в на сайте http://msdn.microsoft.com/. После изучения  материала следует ответить на контрольные вопросы и внимательно изучить рабочее задание к работе.

6.3 Краткие теоретические положения

 

Корпорация Майкрософт предлагает несколько основных сборок взаимодействия (primary interop assembly, PIA), в которых содержится официальное описание наиболее часто используемых библиотек Microsoft Office XP. Microsoft Office XP PIA облегчают взаимодействие между управляемым кодом и СОМ-библиотеками Office XP.

СОМ-сборки взаимодействия позволяют выполнять неуправляемый код (СОМ) из управляемого кода (.NET) при помощи Microsoft .NET Framework и общеязыковой среды выполнения. СОМ-сборки взаимодействия позволяют управляемым приложениям привязываться к неуправляемым типам во время компиляции и затем передавать в общеязыковую среду выполнения информацию о том, как в процессе выполнения должны группироваться неуправляемые типы.


Хотя для каждой конкретной библиотеки может существовать неограниченное число СОМ-сборок взаимодействия, только одна из них может выступать в роли PIA. PIA содержит официальное описание неуправляемых типов, определяемых их издателем. Кроме того, PIA всегда имеют цифровую подпись издателя.


Как правило, следует избегать использования СОМ-сборок взаимодействия Office XP, не входящих в число основных сборок взаимодействия Office XP. Также следует избегать использования СОМ-сборок взаимодействия Office XP, созданных Microsoft Visual Studio .NET во время разработки. Любая СОМ-сборка взаимодействия Office XP, не входящая в загружаемый пакет основных сборок взаимодействия Office XP, считается неофициальной.


Чтобы загрузить официальные PIA для приложений Microsoft Office XP и связанных с ними технологий, обратитесь на веб-узел MSDN (Microsoft Developer Network) по адресу:

Основные сборки взаимодействия (PIA) для Microsoft Office XP
http://msdn.microsoft.com/vstudio/downloads/tools/ (http://msdn.microsoft.com/vstudio/downloads/tools/)

Ниже перечислены модули, входящие в загрузочный комплект Office XP PIA.

  •  adodb.dll
  •  dao.dll
  •  Microsoft.Office.Interop.Access.dll
  •  Microsoft.Office.Interop.Excel.dll
  •  Microsoft.Office.Interop.FrontPage.dll
  •  Microsoft.Office.Interop.FrontPageEditor.dll
  •  Microsoft.Office.Interop.Graph.dll
  •  Microsoft.Office.Interop.Outlook.dll
  •  Microsoft.Office.Interop.OutlookViewCtl.dll
  •  Microsoft.Office.Interop.Owc.dll
  •  Microsoft.Office.Interop.PowerPoint.dll
  •  Microsoft.Office.Interop.Publisher.dll
  •  Microsoft.Office.Interop.SmartTag.dll
  •  Microsoft.Office.Interop.Visio.dll
  •  Microsoft.Office.Interop.Word.dll
  •  Microsoft.Vbe.Interop.dll
  •  mscomctl.dll
  •  msdatasrc.dll
  •  office.dll
  •  stdole.dll

6.4 Порядок выполнения работы

6.1 Спроектируйте форму, разместив на ней элементы управления, как показано на рис.6.1.

Рисунок 6.1

Для создания документа Word с помощью Visual Basic необходимо выполнить следующие действия.

  1.  Запустите Microsoft Visual Studio .NET.
  2.  В меню Файл выберите команду Создать, а затем — Проект. В списке Типы проектов выберите проект Проекты Visual Basic, а затем в разделе Шаблоны — элемент Приложение Windows. По умолчанию будет создана форма Form1.
  3.  Добавьте ссылку на объектную библиотеку Microsoft Word Object Library. Для этого необходимо выполнить следующие действия.

Выберите в меню Проект команду Добавить ссылку.

На вкладке COM выделите библиотеку Microsoft Word Object Library и нажмите кнопку Выбрать.

Для подтверждения сделанного выбора нажмите кнопку
OK в диалоговом окне Add References. Если появится запрос на создание упаковщиков для выбранных библиотек, нажмите кнопку Yes.

Добавьте следующий программный код в верхнюю часть (первая строка) файла Form1.vb:

Imports Word = Microsoft.Office.Interop.Word

  1.  Для отображения панели инструментов выберите в меню View команду Toolbox и добавьте 3 кнопки, а также по 2 элемента TextBox, MaskedTextBox на форму Form1.
  2.  Свяжите с кнопками следующий код:

Для первой кнопки:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click

       Dim oWord As Word.Application

       Dim oDoc As Word.Document

       Dim oPara1 As Word.Paragraph, oPara2 As Word.Paragraph

       Dim oPara3 As Word.Paragraph

       Dim oRng As Word.Range

    

       ‘Start Word and open the document template.

       oWord = CreateObject(“Word.Application”)

       oWord.Visible = True

       oDoc = oWord.Documents.Add

       ‘Insert a paragraph at the beginning of the document.

       oPara1 = oDoc.Content.Paragraphs.Add

       oPara1.Range.Text = “ Фамилия “ & TextBox2.Text & “ Имя “ & TextBox1.Text & “ Год рождения “ & MaskedTextBox1.Text & “ Телефон “ & MaskedTextBox2.Text

       oPara1.Range.Font.Bold = False

       oPara1.Format.SpaceAfter = 24    ‘24 pt spacing after paragraph.

       oPara1.Range.InsertParagraphAfter()

       ‘Insert a paragraph at the end of the document.

       ‘** \endofdoc is a predefined bookmark.

       oPara2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range)

       oPara2.Range.Font.Bold = True

       oPara2.Range.Text = “ “ & TextBox2.Text & “ “ & TextBox1.Text & “ “ & MaskedTextBox1.Text & “ “ & MaskedTextBox2.Text

       oPara2.Format.SpaceAfter = 12

       oPara2.Range.InsertParagraphAfter()

       ‘Insert another paragraph.

       oPara3 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range)

       oPara3.Range.Text = « Пример форматирования текста «

       oPara3.Range.Font.Bold = False

       oPara3.Format.SpaceAfter = 24

       oPara3.Range.InsertParagraphAfter()

       oRng = oDoc.Bookmarks.Item(«\endofdoc»).Range

       oRng.InsertParagraphAfter()

       oRng.InsertAfter(«Конец документа «)

       ‘All done. Close this form.

       'Me.Close()

   End Sub

Для второй кнопки

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click

       Dim oWord As Word.Application

       Dim oDoc As Word.Document

       Dim oTable As Word.Table

       Dim oPara1 As Word.Paragraph, oPara2 As Word.Paragraph

       Dim oPara3 As Word.Paragraph, oPara4 As Word.Paragraph

       Dim oRng As Word.Range

       ‘Start Word and open the document template.

       oWord = CreateObject(“Word.Application”)

       oWord.Visible = True

       oDoc = oWord.Documents.Add

       ‘Insert a paragraph at the beginning of the document.

       oPara1 = oDoc.Content.Paragraphs.Add

       oPara1.Range.Text = “ Фамилия “ & TextBox2.Text & “ Имя “ & TextBox1.Text & “ Год рождения “ & MaskedTextBox1.Text & “ Телефон “ & MaskedTextBox2.Text

       oPara1.Range.Font.Bold = False

       oPara1.Format.SpaceAfter = 24    ‘24 pt spacing after paragraph.

       oPara1.Range.InsertParagraphAfter()

       ‘Insert a paragraph at the end of the document.

       ‘** \endofdoc is a predefined bookmark.

       oPara2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range)

       oPara2.Range.Font.Bold = True

       oPara2.Range.Text = “ “ & TextBox2.Text & “ “ & TextBox1.Text & “ “ & MaskedTextBox1.Text & “ “ & MaskedTextBox2.Text

       oPara2.Format.SpaceAfter = 12

       oPara2.Range.InsertParagraphAfter()

       ‘Insert another paragraph.

       oPara3 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range)

       oPara3.Range.Text = « Пример форматирования «

       oPara3.Range.Font.Bold = False

       oPara3.Format.SpaceAfter = 24

       oPara3.Range.InsertParagraphAfter()

       ‘Insert a 2 x 4 table, fill it with data, and make the first row

       ‘bold and italic.

       ‘Dim r As Integer, c As Integer

       oTable = oDoc.Tables.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range, 2, 4)

       oTable.Range.ParagraphFormat.SpaceAfter = 6

       oTable.Cell(1, 1).Range.Text = “ Фамилия “

       oTable.Cell(1, 2).Range.Text = “ Имя “

       oTable.Cell(1, 3).Range.Text = “ Год рождения “

       oTable.Cell(1, 4).Range.Text = “ Телефон “

       oTable.Cell(2, 1).Range.Text = TextBox1.Text

       oTable.Cell(2, 2).Range.Text = TextBox2.Text

       oTable.Cell(2, 3).Range.Text = MaskedTextBox1.Text

       oTable.Cell(2, 4).Range.Text = MaskedTextBox2.Text

       oTable.Rows.Item(1).Range.Font.Bold = True

       oTable.Rows.Item(1).Range.Font.Italic = True

       ‘Add some text after the table.

       ‘oTable.Range.InsertParagraphAfter()

       oPara4 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range)

       oPara4.Range.InsertParagraphBefore()

       oPara4.Range.Text = “Пример форматирования”

       oPara4.Format.SpaceAfter = 24

       oPara4.Range.InsertParagraphAfter()

       ‘Insert a 4 x 2 table, fill it with data, and change the column widths.

       oTable = oDoc.Tables.Add(oDoc.Bookmarks.Item(“\endofdoc”).Range, 4, 2)

       oTable.Range.ParagraphFormat.SpaceAfter = 6

       oTable.Cell(1, 1).Range.Text = “ Фамилия “

       oTable.Cell(2, 1).Range.Text = “ Имя “

       oTable.Cell(3, 1).Range.Text = “ Год рождения “

       oTable.Cell(4, 1).Range.Text = “ Телефон “

       oTable.Cell(1, 2).Range.Text = TextBox1.Text

       oTable.Cell(2, 2).Range.Text = TextBox2.Text

       oTable.Cell(3, 2).Range.Text = MaskedTextBox1.Text

       oTable.Cell(4, 2).Range.Text = MaskedTextBox2.Text

       oTable.Columns.Item(1).Width = oWord.InchesToPoints(2)   ‘Change width of columns 1 & 2

       oTable.Columns.Item(2).Width = oWord.InchesToPoints(3)

       oRng = oDoc.Bookmarks.Item(“\endofdoc”).Range

       oRng.InsertParagraphAfter()

       oRng.InsertAfter(“Конец документа “)

       ‘All done. Close this form.

       'Me.Close()

   End Sub

Для третьей кнопки

Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click

       Dim oWord As Word.Application

       Dim oDoc As Word.Document

       Dim oPara1 As Word.Paragraph

       Dim oRng As Word.Range

       Dim oShape As Word.InlineShape

       Dim oChart As Object

       ‘Start Word and open the document template.

       oWord = CreateObject(“Word.Application”)

       oWord.Visible = True

       oDoc = oWord.Documents.Add

       ‘Insert a paragraph at the beginning of the document.

       oPara1 = oDoc.Content.Paragraphs.Add

       oPara1.Range.Text = “ Фамилия “ & TextBox2.Text & “ Имя “ & TextBox1.Text & “ Год рождения “ & MaskedTextBox1.Text & “ Телефон “ & MaskedTextBox2.Text

       oPara1.Range.Font.Bold = False

       oPara1.Format.SpaceAfter = 24    ‘24 pt spacing after paragraph.

       oPara1.Range.InsertParagraphAfter()

       ‘Insert a chart and change the chart.

       oShape = oDoc.Bookmarks.Item(“\endofdoc”).Range.InlineShapes.AddOLEObject( _

           ClassType:=”MSGraph.Chart.8”, FileName _

           :=””, LinkToFile:=False, DisplayAsIcon:=False)

       oChart = oShape.OLEFormat.Object

       oChart.charttype = 4 ‘xlLine = 4

       oChart.Application.Update()

       oChart.Application.Quit()

       ‘If desired, you can proceed from here using the Microsoft Graph

       ‘Object model on the oChart object to make additional changes to the

       ‘chart.

       oShape.Width = oWord.InchesToPoints(6.25)

       oShape.Height = oWord.InchesToPoints(6.25)

       ‘Add text after the chart.

       oRng = oDoc.Bookmarks.Item(“\endofdoc”).Range

       oRng.InsertParagraphAfter()

       oRng.InsertAfter(“Конец документа.”)

       ‘All done. Close this form.

       'Me.Close()

   End Sub

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

6.5 Задание для самостоятельной работы

1. Создайте самостоятельно приложение произвольного содержания.

6.6. Литература

  1.  Троелсен Эндрю. C# и платформа .NET. Библиотека программиста – СПб.: Питер, 2006. – 796 с.: ил.
  2.  Джеф Просиз. Программирование для Microsoft .NET /Пер. с англ. – М.: Издательско-торговый дом «Русская редакция», 2003. – 704 стр.: ил.
  3.  Экспозито Д. Microsoft ASP.NET 2.0. Базовый курс. Мастер класс / Пер. с ангд. – М.: Издательство «Русская редакция» ; СПб. : Питер , 2007. – 688 стр. : ил.
  4.  Нейгел Кристиан, Ивбен Билл, Глин Джей, Скиннер Морган, Уотсон Карли. Н45 C# 2005 и платформа .NET 3.0 для профессионалов. : Пер. с анг. – М. : ООО  И.Д. “Вильямс”, 2008. – 1376+416 (на CD) с. : Парал. Тит. Анг.

PAGE  3

  1.  

 

А также другие работы, которые могут Вас заинтересовать

32697. Реклама в системе маркетинговых коммуникаций 137 KB
  Система маркетинговых коммуникаций – это комплекс различных инструментов, целью которых является установление связи между компанией – производителем товаров или услуг и покупателем.
32698. Развитие внимания 441 KB
  В настоящее время стали первостепенными проблемы развития внимания и проведения психокоррекционной работы с людьми, имеющими нарушения внимания. Однако рекомендации для практических психологов по данным вопросам относятся в основном к начальной школе и не освещают опыт
32699. Разработка программного обеспечения для построения статистической модели методом наименьших квадратов 3.21 MB
  Обработка экспериментально полученной зависимости состоит в проведении по зарегистрированным точкам теоретической кривой, рассчитанной для заданного набора численных значений параметров. Варьируя параметры, добиваются наилучшего совпадения теоретической кривой с экспериментальными данными.
32700. ПРОТИВОМАЛЯРИЙНЫЕ СРЕДСТВА 106 KB
  Возбудитель: малярийный плазмодий который имеет два цикла развития → бесполый шизогония в организме человека полый спорогония в теле комара СХЕМА: Противомалярийные средства отличаются по химическому строению и по влиянию на различные формы плазмодиев. Комар Зигота ♂ ♀ созревание Спорозойды...
32701. Планирование экономических показателей работы зоны ТР 318.5 KB
  Соответствие развития транспорта общим направлениям социально – экономического развития страны, что необходимо для своевременного удовлетворения спроса на перевозки пассажиров и грузов; опережающее развитие транспортной отрасли по сравнению с другими отраслями экономики, что позволит смягчить ограничения, накладываемые транспортом на производство, сферу обращения и социальную сферу...
32702. Системы учета затрат в управленческом учете на примере ОАО РГИЛК «Агролизинг» 334.5 KB
  Рассмотреть и изучить основные системы учета затрат, основные преимущества и недостатки данных систем, исследовать классификацию затрат для определения себестоимости, оценки стоимости запасов и полученной прибыли, рассмотреть перспективы развития системы учета затрат
32703. Виявлення інноваційних технологій при виробництві солодких соусів на підприємствах України 470.5 KB
  Тема інноваційні технології солодких соусів сьогодні є актуальною. Серед продукції ресторанного господарства окремий сегмент складають соуси, які сприяють кращому засвоєнню харчових нутрієнтів організмом людини, розширюють асортимент і підвищують харчову цінність страв.
32704. ВЯЖУЩИЕ СРЕДСТВА 65.5 KB
  ВЯЖУЩИЕ СРЕДСТВА Данные вещества вызывают обратимое осаждение коагуляцию белков с образованием плотных альбуминатов. Вяжущие средства ВС наносят на слизистые оболочки или раневую поверхность. Вяжущие средства Органические Неорганические растит.
32705. СТРОЕНИЕ И ФУНКЦИИ ЭФФЕРЕНТНОЙ НЕРВНОЙ СИСТЕМЫ 145 KB
  Открываются N – каналы и N устремляется внутрь клетки по градиенту концентрации деполяризация мембраны; возникает потенциал действия; К выходит. Прямого типа действия Непосредственно взаимодействуют с постсинаптическими рецепторами вызывая их стимуляцию М1Н – ХМ АцетилхолиноСl Карбахолин МХМ Пилокарпина г хлорид Ацеклидин НХМ Цитизин Цититон Лобелин 2. Непрямого типа действия антихолинэстеразные средства 2.1 МНХМ обратимого действия Физостигмин Неостигмин прозерин Пиридостигмин калимин Дистигмин убретид Амбеноний...