Программа на языке VBA

' Объявление переменных и констант

Const StrNomer = 7 'количество строк для заголовка таблицы

Dim Nomer As Long 'номер очередной строки таблицы (потребительское общество)

Dim SP As Long

Dim SF As Long

Dim TP As Long

Dim TF As Long

Dim IP As Long

Dim EF As Long

Dim ItogSP As Long

Dim ItogSF As Long

Dim ItogTP As Long

Dim ItogTF As Long

Dim ItogIP As Long

Dim ItogEF As Long

Dim StrName1 As String

Dim StrName2 As String

 

'Процедура инициализации формы

Private Sub UserForm_Initialize()

Worksheets(«Отчет»).Activate

MesTextBox.SetFocus

End Sub

 

'Процедура считывания заголовочных данных и вывода их в ячейки электронной таблицы Private Sub CommandButton3_Click()

'Ввод данных для новой отчетной таблицы

With ActiveSheet

Range(«E3»).Value = MesTextBox.Text

Range(«G3»).Value = YearTextBox.Text

End With

ActiveWorkbook.SaveAs ("Отклонение фактического уровня издержек обращения от плана за " + MesTextBox.Text + «месяц. xls»)

Nomer = 1

ItogSP = 0

ItogSF = 0

ItogTP = 0

ItogTF = 0

ItogIP = 0

ItogEF = 0

End Sub

 

' Процедура обработки данных по видам деятельности

Private Sub CommandButton2_Click()

StrName1 = Trim(Str(StrNomer + Nomer))

With ActiveSheet

Range("A" + StrName1).Value = Nomer

Range("B" + StrName1).Value = POTextBox.Text

SP = Val(SPTextBox.Text)

Range("C" + StrName1).Value = SP

ItogSP = ItogSP + SP

SF = Val(SFTextBox.Text)

Range("D" + StrName1).Value = SF

ItogSF = ItogSF + SF

TP = Val(TPTextBox.Text)

Range("E" + StrName1).Value = TP

ItogTP = ItogTP + TP

TF = Val(TFTextBox.Text)

Range("F" + StrName1).Value = TF

ItogTF = ItogTF + TF

IP = Val(IPTextBox.Text)

Range("G" + StrName1).Value = IP

ItogIP = ItogIP + IP

EF = Val(EFTextBox.Text)

Range("H" + StrName1).Value = EF

ItogEF = ItogEF + EF

Range("I" + StrName1).Value = EF – IP

'Выполнение автозаполнения с текущей строки таблицы на следующую строку

StrName2 = Trim(Str(StrNomer + Nomer + 1))

Set Range1 =.Range("A" + StrName1 +":I" + StrName1)

Set Range2 =.Range("A" + StrName1 +":I" + StrName2)

Range1.AutoFill Destination:=Range2

Range("A" + StrName2 +":I" + StrName2).ClearContents

End With

 

'Очистка полей формы для ввода очередных данных

POTextBox.Text = ""

SPTextBox.Text = ""

SFTextBox.Text = ""

TPTextBox.Text = ""

TFTextBox.Text = ""

IPTextBox.Text = ""

EFTextBox.Text = ""

POTextBox.SetFocus

Nomer = Nomer + 1

End Sub

 

'Закрытие формы, подведение итогов и вывод фамилии экономиста

Private Sub CommandButton1_Click()

UserForm1.Hide

StrName1 = Trim(Str(StrNomer + Nomer))

With ActiveSheet

Range("A" + StrName1).Value = «Итого:»

Range("C" + StrName1).Value = ItogSP

Range("D" + StrName1).Value = ItogSF

Range("E" + StrName1).Value = ItogTP

Range("F" + StrName1).Value = ItogTF

Range("G" + StrName1).Value = ItogIP

Range("H" + StrName1).Value = ItogEF

Range("I" + StrName1).Value = ItogEF – ItogIP

StrName2 = Trim(Str(StrNomer + Nomer + 2))

Range("A" + StrName2).Value = «Экономист:»

Range("G" + StrName2).Value = FIOTextBox.Text

End With

End Sub








Дата добавления: 2015-12-29; просмотров: 651;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.008 сек.