Сдам Сам

ПОЛЕЗНОЕ


КАТЕГОРИИ







Использование макросов для автоматизации наиболее часто выполняемых задач





Макрос – это записанная последовательность команд и действий пользователя, сохраненная под уникальным именем, которую может выполнить Excel. Макрос можно создать двумя способами:

1) записать программу, составленную на языке Visual Basic, традиционным образом, т.е. ввести текст программы с клавиатуры.

2) Записать с помощью макрорекордера. Excel имеет встроенное средство для записи макросов – макрорекордер. Он записывает все выполняемые пользователем действия в виде операторов языка Visual Basic. В дальнейшем макрос можно редактировать, как обычный текстовый файл.

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

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

Перед тем как записать или написать макрос, необходимо спланировать шаги и команды, которые он будет выполнять. Все действия, совершаемые, когда идет запись макроса с помощью макрорекордера, записываются в макрос. Каждый раз при записи макроса, он сохраняется в новом модуле, присоединенном к книге.

1. Создать с помощью макрорекордера макрос с именем Пример1, который позволяет выполнить следующую последовательность действий: представить окно рабочей книги в нормальном режиме, скрыть сетку, изменить вид шрифта для ячеек и присвоить ячейкам денежный стиль, ввести в ячейку число. Для начала записи макроса в меню Сервис \ Макрос нужно выбрать Начать запись. В диалоговом окне Запись макроса необходимо ввести имя для макроса в соответствующее поле, а в поле Сохранить в книге указать Эта книга. (Если требуется, чтобы макрос был доступен независимо от того, используется ли в данный момент программой Excel, его следует сохранить в личной книге макросов.)

2. После выхода из диалога Запись макроса начинается запись (в строке состояния отображается: Запись). Теперь необходимо выполнить действия, которые должен записать макрорекордер:

· установить нормальное (занимающее часть экрана) представление окна рабочей книги;

· скрыть сетку путем выключения соответствующей опции в закладке Вид диалогового окна Параметры, которое открывается с помощью меню Сервис;

· выделить весь рабочий лист (щелчком по месту пересечения номеров столбцов и номеров строк) и присвоить всем ячейкам денежный стиль;

· задать для всех ячеек шрифт Times New Roman, 16 пунктов;

· снять выделение листа.

· в ячейку С6 занести число 12.

3. Выполнив указанные действия, остановить запись макроса с помощью кнопки Остановить запись.

4. Просмотреть текст созданного макроса. Для этого с помощью меню Сервис \ Макрос \ Макросы в открывшемся окне выбрать команду Войти. После выполнения этой команды автоматически загружается приложение Visual Basic, а в окне Модуль показывается текст созданного макроса. Переписать программу со своими комментариями.

7. Закрыть окно программы Visual Basic и вернуться в свою рабочую книгу (команда File\ Close and return Microsoft Excel).

8. Создать с помощью макрорекордера макрос Пример2, который восстанавливает исходные параметры окна и листа.

9. Перейти на Лист2. Запустить поочередно макросы Пример1 и Пример2 с помощью команды Сервис \ Макрос \ Макросы….

10. Назначение клавиши для запуска макроса. В меню Сервис\Макрос\Макросы выбрать имя того макроса, которому нужно присвоить сочетание клавиш, с помощью которых он будет выполняться. После этого в диалоговом окне нужно выбрать команду Параметры и ввести соответствующую букву в поле Сочетание клавиш. Запустить макросы через сочетание клавиш.

9. Назначение кнопки для запуска макроса. Создать кнопки на листе для запуска макросов Пример1 и Пример2. В меню Вид активизировать панель инструментов Формы. Затем выполнить следующие действия:

· На панели инструментов Формы выбрать элемент Кнопка.

· На листе с помощью мыши создать кнопку нужного размера.

· Выделить созданную на листе кнопку так, чтобы появились маркеры выделения.

· Щелкнуть правой кнопкой мыши и выбрать команду Назначить макрос в контекстном меню.

· Задать кнопке соответствующую надпись.

· Запустить макросы, используя созданные кнопки.

10. Назначение команды в меню Сервис. Назначить макросам Пример1 и Пример2 команды в меню Сервис. В меню Вид \ Панель инструментов выбрать команду Настройка. Далее:

· На вкладке Команды выбрать среди категорий Макросы.

· Открыть меню Сервис.

· Перетащить мышкой команду Настраиваемая команда меню из списка Команды в окне Настройка, удерживая клавишу «Ctrl», в меню Сервис и установить под командой Макрос.

· Щелкнуть правой кнопкой мыши по созданной команде, используя контекстное меню, назначить макрос и переименовать созданную команду меню в соответствии с именем макроса.

· Закрыть окно Настройка.

· Запустить макросы, используя созданные команды меню.

11. Создать кнопки для запуска своих макросов на собственной панели инструментов.

· Создать собственную панель инструментов. Для этого выполнить команду Вид \ Панель инструментов \Настройка …. Выбрать закладку Панели инструментов и воспользоваться кнопкой Создать…, задать для своей панели имя.

· Не выходя из режима настройки, выбрать закладку Команды, выбрать категорию Макросы, перенести мышью на свою панель инструментов команду Настраиваемая кнопка, удерживая клавишу «Ctrl». Используя контекстное меню, назначить макрос кнопке, дать кнопке имя и выбрать или изменить значок для кнопки.

· Запустить макросы с помощью созданных кнопок на своей панели инструментов.

Лабораторная работа 12. Программирование алгоритмов линейной структуры

Цель работы: освоение простейших приемов программирования на языке Excel Visual Basic на примере алгоритмов линейной структуры, отработка различных способов ввода данных и вывода результатов.

Решение любой задачи подразделяется на три этапа: ввод данных, обработка данных и вывод результатов.

Для ввода данных в программе используется оператор присваивания. Синтаксис оператора присваивания имеет следующий вид:

[LET] имя переменной = выражение

В программе, написанной на языке Excel Visual Basic ввод данных можно осуществить тремя способами:

· Ввод данных непосредственно в программе.

В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется число(или текст, если данные текстовые).

· Ввод данных в диалоге (с клавиатуры).

В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется функция InputBox (приглашение[,заголовок][,по умолчанию][,x позиция] [,y позиция] [,файл справки]). Эта функция имеет один обязательный аргумент – приглашение – это строковое выражение, отображаемое как сообщение в диалоговом окне функции. Аргумент заголовок используется для задания текста, отображаемого в строке заголовка диалогового окна функции InputBox. В окне функции имеется поле ввода, в которое пользователь должен ввести значение. Возвращает функция строковое значение, содержащее текст, введенный в поле ввода. Т.о., переменной, имя которой указано в левой части оператора присваивания, будет присвоено значение, введенное пользователем в поле ввода окна функции InputBox. Для преобразования введенного в поле ввода диалога строкового выражения в формат вещественного числа используется функция Val (строковое выражение).

· Ввод данных из ячеек таблицы.

В этом случае в качестве выражения, стоящего в правой части оператора присваивания, используется объект WorkSheets(«имя листа»).Range(«адрес ячейки»).Value. Таким образом переменной, имя которой указано в левой части оператора присваивания, будет присвоено значение ячейки, адрес которой указан в правой части оператора.

Вывод результатов можно осуществить следующим образом:

· Вывод в окне сообщения.

В этом случае используется функция MsgBox (приглашение[,кнопки] [,заголовок] [,файл справки])

· Вывод в ячейки таблицы.

В этом случае используется следующая конструкция:

WorkSheets(«имя листа»).Range(«адрес ячейки»).Value = выражение

Т.о. значение выражения, стоящего в правой части конструкции, записывается в ячейку таблицы, имя которой указано в левой части.

 

Задача. Вычислить площадь треугольника по формулам:

где - полупериметр

Для решения задачи:

  1. Создать новую рабочую книгу в Excel
  2. Переименовать рабочий лист в «Работа 1»
  3. Ввести данные в ячейки таблицы согласно образцу:
  A B C D E F
  Исходные данные Вычисление площади
  a= 4,6   s1=    
  b= 11,7   p=    
  c= 8,7   s2=    
  h=          
  1. В ячейках Е2:Е4 задать формулы для вычисления s1,p,s2 (Внимание! s1 и s2 – это площадь одного и того же треугольника, вычисленная разными способами).
  2. Выполнить команду Сервис \ Макрос \ Редактор Visual Basic. В появившемся окне Microsoft Visual Basic выбрать пункт Insert (Вставка) операционного меню, а в нем команду Module (в рабочую книгу будет добавлен Модуль1 – Module1)
  3. Ввести следующую программу (Внимание! Во избежание ошибок текст программы должен быть набран в английском регистре, включая символы “.,: Допускается использование русского шрифта при записи комментариев и текста, заключенного в кавычки в операторах InputBox, MsgBox)

Sub prog1()

‘ввод исходных данных

a = 4.6: b = 11.7: c = 8.7: h = 3

'вычисление площади по основанию и высоте

s1 = 1 / 2 * b * h

‘вывод результата в окне сообщения

MsgBox «s1=«& s1

'вычисление площади по формуле Герона

p = (a + b + c) / 2

‘вывод полупериметра в окне сообщения

MsgBox «p=«& p

s2 = Sqr(p * (p - a) * (p - b) * (p - c))

‘вывод площади в окне сообщения

MsgBox «s2=«& s2

End Sub

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

  1. Запустить программу на выполнение, установив курсор в любом месте процедуры prog1() и нажав кнопку на панели Visual Basic. Проверить результаты вычислений. Сохранить рабочую книгу.
  2. Скопировать текст программы prog1() после оператора End Sub.
  3. Изменить название процедуры на prog2(). Внести соответствующие изменения в текст программы так, чтобы ввод исходных данных производился с помощью диалога (см. лекцию, функция InputBox). (Внимание! Во избежание ошибок, связанных с различными типами данных в Basic, следует использовать функцию Val в InputBox. Например, a = Val (InputBox(«введите а», «Исходные данные»)). Указанная функция позволяет преобразовать введенное в окно диалога число в формат вещественного числа).
  4. Запустить prog2() на решение и проверить результаты.
  5. Аналогично предыдущему заданию получить еще одну копию текста программы и назвать ее prog3().
  6. Самостоятельно внести соответствующие изменения в текст программы с учетом требования, что исходные данные вводятся из соответствующих ячеек таблицы, и вывод результатов производится в ячейки таблицы F2:F4. Запустить программу на решение.

 

Лабораторная работа № 13. Программирование разветвляющихся вычислительных процессов

Цель работы: освоение приемов программирования разветвляющихся вычислительных процессов.

Для реализации алгоритмов разветвляющейся структуры в программе используется оператор условного перехода, который может иметь следующий синтаксис:

1) If условие Then оператор1 Else оператор2

Оператор1 выполняется, если условие истинно, в противном случае выполняется оператор2.

2) If условие

Then

блок операторов 1

Else

блок операторов 2

End if

Блок операторов 1 выполняется, если условие истинно, в противном случае выполняется блок операторов 2.

 

Задача 1. Составить программу для решения квадратного уравнения вида ах2+bх+с=0. Для решения выполнить следующее:

1. Переименовать текущий рабочий лист Excel в Решение уравнения.

2. На листе Решение уравнения создать таблицу:

3. На листе Модуль ввести текст программы, используя Редактор Visual Basic (блок-схема решения задачи представлена на стр.48). Ввод исходных данных осуществлять с клавиатуры. Окно ввода данных должно содержать заголовок «Исходные данные». Вывод результатов осуществлять в окнах сообщений. В начале программы поставить оператор описания переменных:

DIM a,b,c,x,x1,x2 As Single

4. Скопировать текст программы. В копии программы изменить имя. Изменить текст программы таким образом, чтобы исходные данные брались из соответствующих ячеек с листа Решение уравнения, а результаты помещались в следующие ячейки на лист Решение уравнения:

С5 С6 D6 C7 D7
Уравнение не имеет действительных корней или Уравнение имеет один корень или Уравнение имеет два корня   «x=»     «x1=»   Значение х     Значение х1     «х2=»     Значение х2

Для очистки блока ячеек C5:D7 в соответствующем месте программы вставить оператор:

Worksheets (“Решение уравнения”) .Range (“C5:D7”) .Clear

  1. Используя обе программы решить квадратные уравнения:

2+2х-6=0

2-9х+2=0

2-0,4х-4=0

 

Задача 2. Составить программу, реализующую гороскоп на ближайшие дни. В результате работы программы на экране должно появляться окно ввода с заголовком «Гороскоп на ближайшие дни», содержащее сообщение «Введите дату своего рождения» и поле ввода, куда пользователь будет вводить дату своего рождения. В программе введенная дата должна анализироваться, определяться какому знаку Зодиака она соответствует, и выдаваться резюме в окне сообщения (например, «Вы – Овен. Завтра Вас ожидает крупное денежное вознаграждение»).

При написании программы использовать следующее:

Переменная типа Date используется для хранения информации о дате и времени (диапазон значений: от 1 января 100 г. до 31 декабря 9999 г.). Указать в операторе объявления переменных Dim.

Функция преобразования типов Cdate (выражение) – преобразует числовое или текстовое значение в дату.

Функции даты и времени:

Day (Дата) – возвращает число от 1 до 31, соответствующее числу месяца в аргументе Дата.

Month (Дата) - возвращает число от 1 до 12, соответствующее номеру месяца в аргументе Дата.

Лабораторная работа № 14. Программирование алгоритмов циклической структуры.

Цель работы: освоение приемов программирования циклических вычислительных процессов.

Для организации регулярного цикла в программе необходимо использовать оператор регулярного цикла, который имеет следующий синтаксис:

For имя переменной цикла = начальное значение переменной цикла To конечное значение переменной цикла Step шаг изменения значения переменной цикла
  Блок операторов      
Next      

 

Когда в программе встречается оператор регулярного цикла происходит следующее:

1) переменной цикла присваивается ее начальное значение;

2) выполняется блок операторов, стоящий между For и Next;

3) значение переменной цикла изменяется на шаг. Если новое значение переменной цикла не превышает конечного, то – возврат к пункту 2, иначе – выход из цикла (переход к следующему оператору программы).

 

Задача. Построить таблицу значений и график функции на отрезке с шагом hx =0,5, где а=1,5

Для решения задачи необходимо сделать следующее:

  1. На рабочем листе: в столбец A ввести все значения переменной Х с помощью операции автозаполнения (ячейки А2:А22), в столбце В вычислить с помощью формулы все значения функции f(x).
  2. Cамостоятельно составить программу на языке Visual Basic для поставленной задачи (результаты выводить в окнах сообщений).
  3. Ввести и отладить программу.
  4. Так как вывод данных в окнах сообщенийв данном случае не является удобным, изменить программу так, чтобы вывод данных осуществлялся в ячейки таблицы С2:С22. Для этого:

· ввести две дополнительные переменные – i – номер строки, j – номер столбца ячейки таблицы, в которую будет записываться текущее значение функции f(x);

· самостоятельно задать начальные значения этих переменных в программе через оператор присваивания;

· для организации вывода результатов в таблицу в данном случае понадобится объект Cells, с помощью которого можно задать инструкцию для вывода массива данных. Для данного случая под массивом понимается столбец значений С2:С22, а с помощью Cells можно указать расположение конкретной одной ячейки из указанного столбца (например, Cells(2, 3) – ячейка, стоящая на пересечении 2-ой строки и 3-го столбца). Исходя из сказанного, в программе вывод результатов в ячейки следует организовать с помощью инструкции – Worksheets(“Имя листа”).Cells(i,j).Value=fx. (Внимание! Самостоятельно определить, в каком месте программы нужно разместить данную инструкцию и как изменять значения переменных i и j, чтобы заполнялся весь диапазон значений С2:С22).

  1. Проверить работу программы.
  2. Перейти на рабочий лист и записать с помощью макрорекордера макрос для построение диаграммы по столбцам А и С, вид – точечная. (Учесть, что выделение несмежных столбцов осуществляется с помощью клавиши «Ctr l»). Записать макрос под именем Диаграмма. Проверить его работу!!!
  3. Выполнить команду Cервис \ Макрос \ Макросы \ Диаграмма \ Войти, просмотреть текст макроса Диаграмма.
  4. Скопировать нужный фрагмент макроса Диаграмма в свою программу (в нужное место!).
  5. На рабочем листе очистить содержимое ячеек С2:С22 и удалить диаграмму.
  6. Сделать кнопку для запуска программы.
  7. Проверить работу своей программы.

Лабораторная работа № 15. Создание диалогов

Цель работы: получение навыков создания диалогов в табличном процессоре Excel. Ознакомление с основными управляющими элементами диалога.

 

Чтобы организовать взаимодействие человека и программы используются разнообразные экранные формы. Примером таких форм служат диалоги в программах для среды Windows. Для создания диалога [формы] необходимо вставить в рабочую книгу лист с заготовкой нового диалога. Для этого:

1. Выполнить команду Сервис \ Макрос \ Редактор Visual Basic – Insert (Вставка) – UserForm

или

2. Щелкнуть на ярлычке рабочего листа правой клавишей мыши и в контекстом меню выбрать опцию Вставка. В списке диалога Вставить следует выбрать элемент Диалог.

 

Новая экранная форма представляет собой пустое серое окно со строкой заголовка. Первый шаг при работе с экранной формой – установка значений ее свойств с помощью команды View\Properties Window (Вид – Окно свойств).

Свойство Name – имя формы, которое используется в программе для ссылки на экранную форму (не изменять!). Свойство Caption (Заголовок) – текст, который отображается в строке заголовка. Созданный Диалог (Форму) можно выполнить нажав [F5]. Под выполнением формы понимается вывод ее на экран в окне приложения.

 

Задача: Создать диалог (форму) для вычисления суммы, разности, произведения и частного двух чисел. Для этого:

1. Выполнить команду Сервис \ Макрос \ Редактор Visual Basic – Insert (Вставка) – UserForm. В рабочую книгу будет вставлен новый лист с заготовкой диалога.

2. Задать заголовок диалога «Простейший калькулятор». Для этого в строке Caption Окна свойств ввести текст заголовка.

3. Создать диалог (см. рисунок), соблюдая порядок управляющих элементов. При обращении из программы к элементам управления в диалоге важно знать порядок их расположения. Порядок расположения элементов – это порядок их обхода с помощью клавиши «Tab». Изначально порядок расположения управляющих элементов соответствует порядку их создания, затем его можно изменить с помощью специального диалога, не затрагивая при этом самих элементов. Для создания управляющих элементов в поле диалога необходимо использовать панель инструментов (ToolBox), которая вызывается по команде View\ToolBox и имеет следующий вид:

 

 

 


 

4. Для создания программы вычисления суммы двух чисел выполните двойной щелчок по кнопке + в окне UserForm1. В листе программы UserForm1 [Программы] появится заготовка процедуры:

 

Private Sub Command Button 1 – Click ()

End Sub

Введите в нее текст процедуры для вычисления суммы:

Private Sub Command Button 1 – Click ()

a=Val(Text Box1.Text)

b=Val(Text Box2.Text)

c=a+b

Text Box3.Text=Str(c)

End Sub

Ф-ия Val(х) – преобразование строки в число,

Str(х) – преобразование числа в строку

Text Box 1 – это объект поля ввода для числа A.

Text – свойство объекта Text Box 1.

a=Text Box1.Text означает: читать из поля ввода текст

5. Аналогично создать процедуры вычитания, умножения и деления двух чисел.

6. Для очистки полей ввода создать процедуру, предварительно щелкнув по кнопке Очистить

Private Sub Command Button 3 – Click ()

Text Box1.Text=” “

Text Box2.Text=” “

Text Box3.Text=” “

End Sub

7. Для выхода из программы используется оператор End. После двойного щелчка по кнопке Выход дополните процедуру оператором End.

Private Sub Command Button 4 – Click ()

End

 
End Sub

8. Нажмите кнопку Run на панели инструментов Visual Basic и протестируйте программу.

9. Для запуска диалога Простейший калькулятор нужно создать следующий макрос:

Sub StartrCalсul ()

UserForm1.Show

End Sub

с помощью команды Сервис \ Макрос \ Редактор VB – Insert – Моdul.

10. Для запуска макроса StartCalcul создать кнопку или команду в меню и назначить ей макрос StartCalcul.

 

Лабораторная работа № 16. Создание диалоговых окон

 

Цель работы: научиться создавать диалоговые окна и освоить работу с панелью инструментов «Формы».

 

1. Создание диалогового окна. Диалоговые окна используются для облегчения взаимодействия пользователя с программой. Для создания диалога щелкните правой кнопкой мыши на ярлыке рабочего листа, выберите Добавить …, затем опцию Окно диалога. В рабочую книгу будет вставлен новый лист Диалог 1 с заготовкой диалога и панелью Формы (элементов управления). Переименуйте лист Диалог 1 в Смета.

- Создать лист диалога

- Изменить размер диалогового окна. Для этого поднести указатель мыши к границе окна и, когда он примет вид выделить окно.

- Используя маркеры выделения, увеличить размер окна примерно в 2 раза. Используя команду Формат объекта контекстного меню, установить размер окна 7x12 см.

- Изменить заголовок окна. Для этого щелкните в области заголовка и введите новый заголовок Смета.







Система охраняемых территорий в США Изучение особо охраняемых природных территорий(ООПТ) США представляет особый интерес по многим причинам...

Что вызывает тренды на фондовых и товарных рынках Объяснение теории грузового поезда Первые 17 лет моих рыночных исследований сводились к попыткам вычис­лить, когда этот...

Что будет с Землей, если ось ее сместится на 6666 км? Что будет с Землей? - задался я вопросом...

Что способствует осуществлению желаний? Стопроцентная, непоколебимая уверенность в своем...





Не нашли то, что искали? Воспользуйтесь поиском гугл на сайте:


©2015- 2024 zdamsam.ru Размещенные материалы защищены законодательством РФ.