РефератыИнформатикаПрПрограммирование на VBA

Программирование на VBA

Министерство образования и науки российской федерации


Государственное образовательное учреждение


высшего профессионального образования


«Липецкий государственный технический университет»


(ЛГТУ)


Экономический факультет


Кафедра экономики


Отчет

по курсу «Офисное программирование»


на тему: ПРОГРАММИРОВАНИЕ НА
VBA


ВЫПОЛНИЛ: студент гр. ЭМ-09-1

Морозов М. О.


_________________


подпись, дата


ПРОВЕРИЛ: Кудинов Ю. И.


_________________


подпись, дата


Липецк 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.Select


ActiveChart.ChartType = xlLine


ActiveChart.SetSourceData Source:=Range("A1:A10")


ActiveChart.SeriesCollection(1).XValues = "='Лист1'!$B$1:$B$10"


End Sub


Sub Макрос4()


'


' Макрос4 Макрос


'


'


ActiveCell.Offset(-11, 2).Range("A1").Select


ActiveSheet.Shapes.AddChart.Select


ActiveChart.ChartType = xlLine


ActiveChart.SetSourceData Source:=ActiveCell.Offset(-5, -4).Range("A1:A10")


ActiveChart.SeriesCollection(1).XValues = "='Лист1'!$B$1:$B$10"


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").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, -6).Columns("A:A").EntireColumn.ColumnWidth = 10.57


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(xlDiagonalDown).LineStyle = xlNone


Selection.Borders(xlDiagonalUp).LineStyle = xlNone


With Selection.Borders(xlEdgeLeft)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


With Selection.Borders(xlEdgeTop)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


With Selection.Borders(xlEdgeBottom)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


With Selection.Borders(xlEdgeRight)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


With Selection.Borders(xlInsideVertical)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


With Selection.Borders(xlInsideHorizontal)


.LineStyle = xlContinuous


.ColorIndex = xlAutomatic


.TintAndShade = 0


.Weight = xlThin


End With


ActiveCell.Range("A8").Select


ActiveCell.FormulaR1C1 = "Итого"


ActiveCell.Range("A1:B1").Select


ActiveWindow.SmallScroll Down:=-3


ActiveCell.Offset(-7, 0).Range("A1:G8").Select


ActiveSheet.ListObjects.Add(xlSrcRange, Range("$A$1:$G$8"), , xlYes).Name = _


"Таблица3"


ActiveCell.Range("A1:G8").Select


ActiveSheet.ListObjects("Таблица3").TableStyle = "TableStyleLight8"


ActiveCell.Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 1).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 2).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 3).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 4).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 5).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(0, 6).Columns("A:A").EntireColumn.EntireColumn.AutoFit


ActiveCell.Offset(8, 0).Range("A1").Select


End Sub


Используемая литература:


1. Практическая работа в VBA: Учебное пособие/ Липецкий Государственный технический университет, Липецк, 2001. – 98с.

Сохранить в соц. сетях:
Обсуждение:
comments powered by Disqus

Название реферата: Программирование на VBA

Слов:1041
Символов:14430
Размер:28.18 Кб.