Автор работы: Пользователь скрыл имя, 18 Февраля 2011 в 21:21, лабораторная работа
Работа с макросами
Министерство образования и науки российской федерации
Государственное образовательное учреждение
высшего профессионального образования
«Липецкий государственный технический университет»
(ЛГТУ)
Экономический факультет
Кафедра
экономики
по курсу «Офисное программирование»
на тему:
ПРОГРАММИРОВАНИЕ НА
VBA
_________________
ПРОВЕРИЛ: Кудинов Ю. И.
_________________
Липецк 2010
Задание №1
С помощью окна
InputBox введите три числа и в окне MsgBox выведите
наибольшее из них.
Sub Макрос1()
Число1 = CInt(InputBox("Введите число"))
Число2 = CInt(InputBox("Введите число"))
Число3 = CInt(InputBox("Введите число"))
'ищем максимум
максимум = Число1
If максимум < Число2 Then
максимум = Число2
End If
If максимум < Число3 Then
максимум = Число3
End If
MsgBox "Наибольшее число из введенных: " & максимум
End Sub
Задание №11
Подсчитайте
произведение элементов двумерного
массива.
Sub Макрос11()
Dim Vals(10, 5) As Integer
'заполним массив случайными числами (кроме нуля)
For i = 0 To 10
For j = 0 To 5
Vals(i, j) = Int(10 * Rnd()) + 1
Next
Next
'посчитаем произведение элементов массива
p = 1
For i = 0 To 10
For j = 0 To 5
p = p * Vals(i, j)
Next
Next
'выведем полученное произведение
MsgBox "Произведение элементов массива равно: " & p
End Sub
Задание №23
Создайте макрос
с кнопкой запуска, позволяющий
строить график <x,y> по данным, находящимся
в ячейках А1:А10 (значения х) и В1:В10 (значения
y).
Sub Макрос23()
ActiveSheet.Shapes.AddChart.
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData Source:=Range("A1:A10")
ActiveChart.SeriesCollection(
End Sub
Sub Макрос4()
'
' Макрос4 Макрос
'
'
ActiveCell.Offset(-11, 2).Range("A1").Select
ActiveSheet.Shapes.AddChart.
ActiveChart.ChartType = xlLine
ActiveChart.SetSourceData Source:=ActiveCell.Offset(-5, -4).Range("A1:A10")
ActiveChart.SeriesCollection(
End Sub
Задание №33
На основании
условия задачи 31 выполните математические
операции, используя вместо кнопок соответствующие
переключатели: Сложение,
Вычитание, Умножение,
Деление.
Private Sub cmb_Change()
Select Case cmb.Value
Case "Сложение"
Range("D8").Value = Range("A8").Value + Range("B8").Value
Case "Вычитание"
Range("D8").Value = Range("A8").Value - Range("B8").Value
Case "Умножение"
Range("D8").Value = Range("A8").Value * Range("B8").Value
Case "Деление"
Range("D8").Value = Range("A8").Value / Range("B8").Value
End Select
End Sub
Private Sub cmb_KeyUp(ByVal KeyCode As MSForms.ReturnInteger, ByVal Shift As Integer)
If KeyCode = vbKeyReturn Then
cmb.Clear
cmb.AddItem "Сложение"
cmb.AddItem "Вычитание"
cmb.AddItem "Умножение"
cmb.AddItem "Деление"
End If
End Sub
Задание №44
Составьте в
VBA таблицу МАГАЗИНЫ примините к ней
формат Простой.
Sub Макрос44()
'
' Макрос44 Макрос
Range("A1").Activate
'ActiveCell.Range("A1").Select
ActiveCell.FormulaR1C1 = "Магазин"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Вид"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Январь"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Февраль"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Март"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Апрель"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "Итого"
ActiveCell.Offset(1, -6).Range("A1").Select
ActiveCell.FormulaR1C1 = "МИРАЖ"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "СУВЕНИР"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "ПРЕСТИЖ"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "ДОМОВОЙ"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "ЮНИОН"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "МОДА"
ActiveCell.Offset(-5, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "М"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "А"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "М"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "А"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "М"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "А"
ActiveCell.Offset(-5, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "15345"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "13440"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "16890"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "14840"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "13985"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "17345"
ActiveCell.Offset(-5, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "16725"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15540"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15730"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "16320"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15565"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "14255"
ActiveCell.Offset(-5, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "17340"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "14455"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "17220"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15330"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "16775"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15660"
ActiveCell.Offset(-5, 1).Range("A1").Select
ActiveCell.FormulaR1C1 = "14990"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "16385"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "15700"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "16125"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "13355"
ActiveCell.Offset(1, 0).Range("A1").Select
ActiveCell.FormulaR1C1 = "13480"
ActiveCell.Offset(0, 1).Range("A1").Select
ActiveCell.Offset(0,
-6).Columns("A:A").
ActiveCell.Offset(0,
-6).Columns("A:A").
ActiveCell.Offset(1, -6).Range("A1:B1").Select
With Selection
.HorizontalAlignment = xlGeneral
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
End With
ActiveCell.Offset(-7, 0).Range("A1:G8").Select
'ActiveCell.Offset(-7, 6).Range("A1").Activate
With Selection
.HorizontalAlignment = xlCenter
.VerticalAlignment = xlBottom
.WrapText = False
.Orientation = 0
.AddIndent = False
.IndentLevel = 0
.ShrinkToFit = False
.ReadingOrder = xlContext
End With
Selection.Borders(
Selection.Borders(