Створення макросів для MsWord.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Інститут комп’ютерних наук та інформаційних технологій
Факультет:
Не вказано
Кафедра:
Програмного забезпечення (ПЗ)

Інформація про роботу

Рік:
2008
Тип роботи:
Лабораторна робота
Предмет:
Людино-машинні інтерфейси

Частина тексту файла (без зображень, графіків і формул):

Міністерство науки і освіти України Національний університет “Львівська Політехніка” Інститут комп’ютерних наук та інформаційних технологій Кафедра ПЗ Звіт З лабораторних робіт №1,2,3 з курсу «Людино-машинні інтерфейси» Виконано Студент групи ПІ-2 Львів 2008 Тема: Створення макросів для MsWord Мета: Навчитись створювати макроси для прискорення роботи з MsWord. Завдання: Створити макрос для вирахування елементів матриці А за наступним правилом : А[i][j]=3*B[i][j]/Bmax .Ввід організовувати за допомогою InputBox, а вивід за допомогою MsgBox. Створити макрос який задає параметри для абзацу поточного документа. 3) Створити макрос, який додає користувацьке меню, а всі пункти стандартного меню приховує. Макрос має створити користувацьку панель та дві кнопки. Перша кнопка має змінювати стиль фрагменту тексту, інша – викликати помічника і продемонструвати роботу з ним. Теоретичні відомості   В об’єкт Document входять об’єкти Bookmarks Characters (Range) CommandBars Comments DocumentProperties Endnotes Fields Footnotes FormFields Frames Hyperlinks Indexes InlineShapes HorizontalLineFormat ListParagraphs Lists ListParagraphs Range ListTemplates ListLevels Font Paragraphs ProofreadingErrors (Range) Revisions ReadabilityStatistics Scripts Sections Sentences (Range) Shapes StoryRanges (Range Styles Subdocuments Tables TablesOfAuthoritiesCategories (TableOfAuthoritiesCategory) TablesOfAuthorities (TableOfAuthorities) TablesOfContents (TableOfContents) TablesOfFigures (TableOfFigures) Variables Versions Windows Words (Range) Сімейство Paragraphs представляє всі абзаци документа, сімейство Sentences – всі речення, Words – всі слова, а Characters – всі символи документа. В об’єктній моделі Office всі панелі інструментів і меню представлені об’єктами типу CommandBar. Всі об’єкти CommandBar програми об’єднані в сімейство CommandBars. Тексти макросів: Макрос 1: Dim A(4, 4) As Double Dim B(4, 4) As Integer Dim max As Integer Sub mas() Dim msg, msg1 As String For i = 0 To 3 Step 1 For j = 0 To 3 Step 1 msg = "Введіть елемент B[" & i + 1 & "][" & j + 1 & "]=": B(i, j) = InputBox(msg, "Введення масиву В:", 0) Next j Next i max = max_element(B()) msg = "масив A:" & vbCrLf For i = 0 To 3 Step 1 For j = 0 To 3 Step 1 A(i, j) = 3 * B(i, j) / max msg = msg & "A[" & i + 1 & "][" & j + 1 & "]=" & A(i, j) & " " msg1 = msg1 & "B[" & i + 1 & "][" & j + 1 & "]=" & B(i, j) & " " Next j msg = msg & vbCrLf msg1 = msg1 & vbCrLf Next i msg1 = msg1 & "max=" & max & vbCrLf msg = msg1 & msg MsgBox msg End Sub Public Function max_element(BB() As Integer) As Integer Dim max1 As Integer max1 = 0 For i = 0 To 3 Step 1 For j = 0 To 3 Step 1 If max1 < BB(i, j) Then max1 = BB(i, j) Next j Next i max_element = max1 End Function Sub My_macro() ' ' My_macro Макрос ' Макрос создан 01.11.2008 Customer ' mas() End Sub Макрос 2: Attribute VB_Name = "NewMacros1" Dim number As Integer Dim num As Integer Sub my_macros_for_formatting_paragraph() Attribute my_macros_for_formatting_paragraph.VB_Description = "Макрос создан 01.11.2008 Customer" Attribute my_macros_for_formatting_paragraph.VB_ProcData.VB_Invoke_Func = "Normal.NewMacros.my_macros_for_formatting_paragraph" number = InputBox("Введіть номер абзацу який будете форматувати ", "Введення:", 0) If (number > ActiveDocument.Paragraphs.Count) Or (number < 0) _ Then MsgBox "Значення виходить за межі кількості абзаців": Exit Sub 'Alignment: вирівнювання абзацу num = InputBox("Введіть:" & vbCrLf & "1 для вирівнювання по правому краю" & vbCrLf & "2 для вирівнювання по центру" & vbCrLf & "3 для вирівнювання по ширині" & vbCrLf & "4 для вирівнювання по лівому краю", "Введення:", 0) Select Case num Case 1 ActiveDocument.Paragraphs(number).Alignment = wdAlignParagraphRight Case 2 ActiveDocument.Paragraphs(number).Alignment = wdAlignParagraphCenter Case 3 ActiveDocument.Paragraphs(number).Alignment = wdAlignParagraphJustify Case 4 ActiveDocument.Paragraphs(number).Alignment = wdAlignParagraphLeft End Select 'SpaceAfter: відступ знизу 'Збільшуєм інтервал після абзацу (свойство SpaceAfter): num = InputBox("Введіть інтервал після абзацу:", "Введення:", 0) If num < 0 Then _ MsgBox "Такий інтервал є неможливий" _ Else: ActiveDocument.Paragraphs(number).SpaceAfterAuto = False: ActiveDocument.Paragraphs(number).SpaceAfter = num 'Збільшуєм інтервал перед абзацом (свойство SpaceBefore): num = InputBox("Введіть інтервал перед абзацом:", "Введення:", 0) If num < 0 Then _ MsgBox "Такий інтервал є неможливий" _ Else ActiveDocument.Paragraphs(number).SpaceBeforeAuto = False: ActiveDocument.Paragraphs(number).SpaceBefore = num 'Встановлюєм міжстрічковий інтервал num = InputBox("Введіть міжстрічковий інтервал:", "Введення:", 0) ActiveDocument.Paragraphs(number).LineSpacingRule = wdLineSpaceMultiple ActiveDocument.Paragraphs(number).LineSpacing = LinesToPoints(num) 'Зміна фона абзацу 'Задать дляабзаца штриховку (узор) 15%: ActiveDocument.Paragraphs(number).Shading.Texture = wdTexture15Percent 'Встановлення відступів num = InputBox("Введіть відступ з ліва:", "Введення:", 0) ActiveDocument.Paragraphs(number).LeftIndent = CentimetersToPoints(num) num = InputBox("Введіть відступ з права:", "Введення:", 0) ActiveDocument.Paragraphs(number).RightIndent = CentimetersToPoints(num) 'Створити навколо абзацу рамку заданого стилю ActiveDocument.Paragraphs(number).Borders.OutsideLineStyle = wdLineSyleEmboss3D ' my_macros_for_formatting_paragraph Макрос End Sub Макрос 3: Attribute VB_Name = "NewMacros" Public Sub my_style() Selection.Style = ActiveDocument.Styles("Заголовок 2") End Sub Public Sub Assistant_sub() Dim MyBal As Balloon Dim UserChoice As Integer Assistant.Visible = True Assistant.Animation = msoAnimationGreeting Set MyBal = Assistant.NewBalloon MyBal.Heading = "Your choice" MyBal.Text = "ПРЕДСТАВЛЯЮ ТРИ СПОСОБИ ПОТРАПИТИ НА РОБОТУ" MyBal.Button = msoButtonSetOkCancel MyBal.Labels(1).Text = "Пішком" MyBal.Labels(2).Text = "На таксі" MyBal.Labels(3).Text = "Подумки" UserChoice = MyBal.Show Assistant.Animation = msoAnimationCheckingSomething Select Case UserChoice Case 1 Set MyBal = Assistant.NewBalloon MyBal.Text = "А хоть через центр........" MyBal.Heading = "1 спосіб" MyBal.Show Case 2 Set MyBal = Assistant.NewBalloon MyBal.Text = "Шукаєш найблищу зупинку і поїхав" MyBal.Heading = "2 спосіб" MyBal.Show Case 3 Set MyBal = Assistant.NewBalloon MyBal.Text = "zzzzzzzzzzzzzzzz" MyBal.Heading = "3 спосіб" MyBal.Show End Select Assistant.Visible = False End Sub Public Sub my_panel() Dim MyCBar As CommandBar Set MyCBar = CommandBars.Add(Name:="Panel", Position:=msoBarTop, Temporary:=True) MyCBar.Visible = True Dim MyCBut As CommandBarButton Set MyCBut = CommandBars("Panel").Controls.Add(Type:=msoControlButton) With MyCBut .Style = msoButtonCaption .OnAction = "my_style" .Caption = "change style" End With Dim MyCButHLP As CommandBarButton Set MyCButHLP = CommandBars("Panel").Controls.Add(Type:=msoControlButton) With MyCButHLP .Style = msoButtonCaption .OnAction = "Assistant_sub" .Caption = "Assistant" End With MyCButHLP.Visible = True End Sub Public Sub delete() CommandBars("Panel").delete End Sub Sub show_menu() CommandBars("Menu Bar").Reset End Sub Sub Menu() Dim MyCBar As CommandBar Dim MyCon As CommandBarControl Dim MyMenu As CommandBarControl Set MyCBar = CommandBars.ActiveMenuBar Dim i For i = 1 To MyCBar.Controls.Count MyCBar.Controls.Item(i).Visible = False Next i Set MyMenu = MyCBar.Controls.Add(Type:=msoControlPopup, Temporary:=True) MyMenu.Caption = "My menu" Set MyCon = MyMenu.CommandBar.Controls.Add(Type:=msoControlButton, ID:=1) With MyCon .Caption = "Add_Panel" .TooltipText = "Add_Panel" .Style = msoButtonCaption .OnAction = "my_panel" End With Set MyCon = MyMenu.CommandBar.Controls.Add(Type:=msoControlButton, ID:=2) With MyCon .Caption = "Delete Panel" .TooltipText = "Delete Panel" .Style = msoButtonCaption .OnAction = "delete" End With Set MyCon = MyMenu.CommandBar.Controls.Add(Type:=msoControlButton, ID:=3) With MyCon .Caption = "Show" .TooltipText = "Show other menu" .Style = msoButtonCaption .OnAction = "Show_menu" End With End Sub Висновок: Я навчився за допомогою макросів спрощувати і прискорювати роботу в Ms Word.
Антиботан аватар за замовчуванням

01.01.1970 03:01-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!