Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лабораторные_ VBA1.doc
Скачиваний:
1
Добавлен:
01.04.2025
Размер:
5.22 Mб
Скачать

5. Вставте у форму індикатор стану виконання процесу перетворення тексту Progress Bar.

Для цього виконайте команду контекстового меню вікна інстру­ментів Additional Controls... У вікні, що з'явиться, виберіть пункт Microsoft ProgressBar Control / Version x.O / Ok. Розташуйте індикатор стану у формі так, як показано на рис. 19, скориставшись піктограмою ProgressBar вікна Toolbox. Вибрати вигляд індикатора стану можна, змінивши його властивість Scrolling.

6. Активізуйте вікно форми і запустіть програму (форму) на виконання, клацнувши на кнопці Run Sub/UserForm.

Закрийте форму. Активізуйте будь-яке інше вікно VBA і знову спробуйте запустити форму. Нічого не відбудеться, оскільки те­пер уже запускається макрос, а в ньому не описана процедура відкривання створеної форми.

Зауваження. Знову відкрити форму можна, двічі клацнувши по її імені у вікні проекта.

7. Запрограмуйте відкривання вікна "Перетворення тексту" у момент запуску макросу.

Для цього у вікні з текстом програми Normal-NewMacros (Code) у процедурі Converter викличте метод Show (показати) для форми UserForml:

Тепер запуск макросу в будь-якому випадку приведе до відкривання вікна форми UserForml. Переконайтеся у цьому.

8. Поставте у відповідність створеному макросу комбінацію "гарячих" клавіш Ctrl+Shift+C.

Для цього поверніться у вікно Microsoft Word командою View / Microsoft Word або через панель задач і виконайте команду головного меню View / Toolbars / Customize... На закладці Commands вікна Customize клацніть на кнопці Keyboard... У вікні, що відкриється, у списку Categories виберіть Macros, а у вікні Commands наш макрос Converter. Клацніть у рядку Press new shortcut key / натисніть комбінацію клавіш Ctrl + Shift + С і присвойте її макросові кнопкою Assign / Close. Переконайтесь, що в Microsoft Word вікно форми відкривається комбінацією клавіш Ctrl + Shift + С.

Зауваження. Присвоєння макросові комбінації клавіш може не відбутися, якщо ця комбінація вже використовується для іншого макросу. Задайте іншу комбінацію клавіш.

9. Запрограмуйте кнопку Ok, двічі клацнувши по ній.

Відкриється вікно з текстом програми форми Normal— UserForml (Code), де запрограмуйте процедуру CommandBut-tonl_Click():

10. Опишіть глобальну змінну word.

Для цього у лівому випадаючому списку вікна Normal UserForml (Code) виберіть (General), а у правому, - (Declaration). Введіть опис змінної:

11. Закрийте вікно VBA. Виокремте неправильно набраний фрагмент тексту і викличте макрос перетворення тексту комбіна­цією клавіш Ctrl+Shift+C.

Кнопка Ok здійснює перетворення і закриває вікно макросу кнопка Cancel — закриває вікно без перетворення тексту.

Домашнє завдання

Задача 6.1. Запрограмуйте кнопку "Cancel" (Відмінити) так, щоб після її натискання вікно форми закривалося без перетворення виокремленого фрагмента тексту.

Підказка. Скористайтеся командою закривання форми END.

Задача 6.2. Забезпечте двосторонню заміну фрагментів тексту для двох мов Українська / Англійська і Англійська / Українська так: будь-яку українську літеру виокремленого фрагмента тексту макрос має замінити відповідною англійською і навпаки. Це доцільно на практиці, оскільки весь фрагмент тексту користувач може набрати у невідповідній розкладці клавіатури: англійській чи українській.

Підказка. Для цього продовжіть список замін у команді CASE процедури CommandButtonl_Click( ) так:

Задача 6.3. Вставте у форму ще одну кнопку "Append" (Вставити) і об'єкт Label (підпис). Після перетворення тексту одержаний і фрагмент має висвітлюватися у вікні як підпис, і тільки після І клацання на кнопці "Вставити" - вставлятися в основний текст І Microsoft Word.

Задача 6.4. В умові задачі 6.3 замініть об'єкт Label (підпис) на TextBox (поле редагування).

Задача 6.5. В умові задачі 6.4 вставте у форму кнопку "Clear" (Очистити), яка замінюватиме перетворений фрагмент тексту порожнім рядком. Користувач матиме змогу вибрати: замінити фрагмент тексту перетвореним чи знищити його.

Задача 6.6. В умові задачі 6.5 вставте у форму кнопку "UnDo" (Повернути назад), за допомогою якої відміняється виконане перед цим перетворення тексту.