Файл: Вдовин Суркова Валентинов Теория систем и системный анализ.pdf
Добавлен: 12.02.2019
Просмотров: 22633
Скачиваний: 340
560
561
For j = 3 To 300
ag = Лист2.Cells(j, 2)
If ag = af Then
nom = j
Else
End If
Next j
ss = 0
For i = 1 To k + 1
st = Лист3.Cells(i + 2, 4) * Лист3.Cells(i + 2, 7)
Лист3.Cells(i + 2, 9) = st
ss = ss + st
Next i
Лист3.Cells(3, 11) = k + 1
Лист3.Cells(k + 4, 9) = ss
With Лист3.Cells(k + 4, 9).Font
.Name = “Arial Cyr”: .FontStyle = “полужирный”
.Size = 12: .Strikethrough = False
.Superscript = False: .Subscript = False
.OutlineFont = False: .Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Otow = Лист2.Cells(nom, 3) + os
Oto10 = Лист10.Cells(nom, 3) + os
If Oto10 >= 5 Then
Лист2.Cells(nom, 3).Interior.ColorIndex = xlNone
Else
End If
Лист2.Cells(nom, 3) = Otow: Лист10.Cells(nom, 7) = Лист2.
Cells(nom, 3)
Лист10.Cells(nom, 3) = Oto10
Лист3.Cells(k + 3, 12) = Calendar1
Лист10.Cells(nom, 10) = Лист10.Cells(nom, 3) / ((Лист3.
Cells(k + 3, 12) - Лист1.Cells(6, 11)) + 1)
opr = Лист2.Cells(nom, 4)
opr10 = Лист2.Cells(nom, 4)
Лист2.Cells(nom, 4) = opr + Val(TextBox4.Text) *
Val(TextBox6.Text)
Лист10.Cells(nom, 4) = opr10 + Val(TextBox4.Text) *
Val(TextBox6.Text)
Лист10.Cells(nom, 8) = (Лист10.Cells(nom, 4) / Лист10.
Cells(nom, 3)) * Лист10.Cells(nom, 7)
End Sub
Private Sub TextBox9_Change() 'Номер удаляемой строи
End Sub
б) Учет продаж предприятия
Запуск макроса “Учет продаж” осуществляется нажатием
кнопки “Ввести данные” (CommandButton3) в диалоговом окне
формы “Учет продаж товаров”.
Private Sub CommandButton3_Click()
Dim k As Integer, ag As String, af As String
k = Лист8.Cells(3, 8)
Лист8.Cells(3 + k, 1) = Лист8.Cells(3, 8) + 1
Лист8.Cells(k + 3, 2) = ComboBox1 ‘наименование товара
Лист8.Cells(k + 3, 3) = Val(TextBox1.Text) 'Объем продаж
af = ComboBox1: opr = Val(TextBox1.Text)
Лист8.Cells(k + 3, 4) = TextBox3 ‘Дата начала продаж
Лист8.Cells(k + 3, 5) = Val(TextBox12.Text) ‘Продолжи-
тельность периода продаж
Лист8.Cells(k + 3, 6) = Val(TextBox2.Text) ‘Цена единицы
товара
With Лист8.Cells(k + 3, 7).Font
.Name = “Arial Cyr”: .FontStyle = “обычный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 1
End With
560
561
For j = 3 To 300
ag = Лист2.Cells(j, 2)
If ag = af Then
nom = j
Else
End If
Next j
ss = 0
For i = 1 To k + 1
st = Лист3.Cells(i + 2, 4) * Лист3.Cells(i + 2, 7)
Лист3.Cells(i + 2, 9) = st
ss = ss + st
Next i
Лист3.Cells(3, 11) = k + 1
Лист3.Cells(k + 4, 9) = ss
With Лист3.Cells(k + 4, 9).Font
.Name = “Arial Cyr”: .FontStyle = “полужирный”
.Size = 12: .Strikethrough = False
.Superscript = False: .Subscript = False
.OutlineFont = False: .Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Otow = Лист2.Cells(nom, 3) + os
Oto10 = Лист10.Cells(nom, 3) + os
If Oto10 >= 5 Then
Лист2.Cells(nom, 3).Interior.ColorIndex = xlNone
Else
End If
Лист2.Cells(nom, 3) = Otow: Лист10.Cells(nom, 7) = Лист2.
Cells(nom, 3)
Лист10.Cells(nom, 3) = Oto10
Лист3.Cells(k + 3, 12) = Calendar1
Лист10.Cells(nom, 10) = Лист10.Cells(nom, 3) / ((Лист3.
Cells(k + 3, 12) - Лист1.Cells(6, 11)) + 1)
opr = Лист2.Cells(nom, 4)
opr10 = Лист2.Cells(nom, 4)
Лист2.Cells(nom, 4) = opr + Val(TextBox4.Text) *
Val(TextBox6.Text)
Лист10.Cells(nom, 4) = opr10 + Val(TextBox4.Text) *
Val(TextBox6.Text)
Лист10.Cells(nom, 8) = (Лист10.Cells(nom, 4) / Лист10.
Cells(nom, 3)) * Лист10.Cells(nom, 7)
End Sub
Private Sub TextBox9_Change() 'Номер удаляемой строи
End Sub
б) Учет продаж предприятия
Запуск макроса “Учет продаж” осуществляется нажатием
кнопки “Ввести данные” (CommandButton3) в диалоговом окне
формы “Учет продаж товаров”.
Private Sub CommandButton3_Click()
Dim k As Integer, ag As String, af As String
k = Лист8.Cells(3, 8)
Лист8.Cells(3 + k, 1) = Лист8.Cells(3, 8) + 1
Лист8.Cells(k + 3, 2) = ComboBox1 ‘наименование товара
Лист8.Cells(k + 3, 3) = Val(TextBox1.Text) 'Объем продаж
af = ComboBox1: opr = Val(TextBox1.Text)
Лист8.Cells(k + 3, 4) = TextBox3 ‘Дата начала продаж
Лист8.Cells(k + 3, 5) = Val(TextBox12.Text) ‘Продолжи-
тельность периода продаж
Лист8.Cells(k + 3, 6) = Val(TextBox2.Text) ‘Цена единицы
товара
With Лист8.Cells(k + 3, 7).Font
.Name = “Arial Cyr”: .FontStyle = “обычный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 1
End With
562
563
nom = 0
For j = 3 To 300
ag = Лист2.Cells(j, 2)
If ag = af Then
nom = j
Else
End If
Next j
ss = 0
For i = 1 To k + 1
st = Лист8.Cells(i + 2, 3) * Лист8.Cells(i + 2, 6)
Лист8.Cells(i + 2, 7) = st
ss = ss + st
Next i
Лист8.Cells(k + 4, 7) = ss
With Лист8.Cells(k + 4, 7).Font
.Name = “Arial Cyr”: .FontStyle = “полужирный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Лист8.Cells(3, 8) = k + 1
опрр = Лист10.Cells(nom, 5) + opr
Otow = Лист2.Cells(nom, 3) - opr
If Otow < 0 Then
MsgBox (“Отмените ввод. Объем продаж превышает на-
личие товара на складе”)
Else
End If
Лист2.Cells(nom, 3) = Otow: Лист10.Cells(nom, 7) = Лист2.
Cells(nom, 3)
If Otow < 5 Then ‘Этот показатель определяется по ре-
зультатам анализа
MsgBox (“Произведите закупки товара. Наличие товара
на складе достигло критических значений”)
With Лист2.Cells(nom, 3).Interior
.ColorIndex = 3
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Else
Лист2.Cells(nom, 3).Interior.ColorIndex = xlNone
Лист2.Cells(nom, 1).Interior.ColorIndex = 15
End If
Лист10.Cells(nom, 5) = опрр
выр = Лист2.Cells(nom, 5)
выр10 = Лист10.Cells(nom, 6)
Лист8.Cells(k + 3, 9) = Calendar1
Лист10.Cells(nom, 11) = Лист10.Cells(nom, 5) / ((Лист8.
Cells(k + 3, 9) - Лист1.Cells(6, 11)) + 1)
Лист2.Cells(nom, 5) = выр + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 6) = выр10 + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 9) = (Лист10.Cells(nom, 6) / Лист10.
Cells(nom, 5)) * Лист10.Cells(nom, 7)
End SubPrivate Sub CommandButton3_Click()
Dim k As Integer, ag As String, af As String
k = Лист8.Cells(3, 8)
Лист8.Cells(3 + k, 1) = Лист8.Cells(3, 8) + 1
Лист8.Cells(k + 3, 2) = ComboBox1 ‘наименование товара
Лист8.Cells(k + 3, 3) = Val(TextBox1.Text) 'Объем продаж
af = ComboBox1: opr = Val(TextBox1.Text)
Лист8.Cells(k + 3, 4) = TextBox3 ‘Дата начала продаж
Лист8.Cells(k + 3, 5) = Val(TextBox12.Text) ‘Продолжи-
тельность периода продаж
Лист8.Cells(k + 3, 6) = Val(TextBox2.Text) ‘Цена единицы
товара
With Лист8.Cells(k + 3, 7).Font
562
563
nom = 0
For j = 3 To 300
ag = Лист2.Cells(j, 2)
If ag = af Then
nom = j
Else
End If
Next j
ss = 0
For i = 1 To k + 1
st = Лист8.Cells(i + 2, 3) * Лист8.Cells(i + 2, 6)
Лист8.Cells(i + 2, 7) = st
ss = ss + st
Next i
Лист8.Cells(k + 4, 7) = ss
With Лист8.Cells(k + 4, 7).Font
.Name = “Arial Cyr”: .FontStyle = “полужирный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Лист8.Cells(3, 8) = k + 1
опрр = Лист10.Cells(nom, 5) + opr
Otow = Лист2.Cells(nom, 3) - opr
If Otow < 0 Then
MsgBox (“Отмените ввод. Объем продаж превышает на-
личие товара на складе”)
Else
End If
Лист2.Cells(nom, 3) = Otow: Лист10.Cells(nom, 7) = Лист2.
Cells(nom, 3)
If Otow < 5 Then ‘Этот показатель определяется по ре-
зультатам анализа
MsgBox (“Произведите закупки товара. Наличие товара
на складе достигло критических значений”)
With Лист2.Cells(nom, 3).Interior
.ColorIndex = 3
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Else
Лист2.Cells(nom, 3).Interior.ColorIndex = xlNone
Лист2.Cells(nom, 1).Interior.ColorIndex = 15
End If
Лист10.Cells(nom, 5) = опрр
выр = Лист2.Cells(nom, 5)
выр10 = Лист10.Cells(nom, 6)
Лист8.Cells(k + 3, 9) = Calendar1
Лист10.Cells(nom, 11) = Лист10.Cells(nom, 5) / ((Лист8.
Cells(k + 3, 9) - Лист1.Cells(6, 11)) + 1)
Лист2.Cells(nom, 5) = выр + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 6) = выр10 + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 9) = (Лист10.Cells(nom, 6) / Лист10.
Cells(nom, 5)) * Лист10.Cells(nom, 7)
End SubPrivate Sub CommandButton3_Click()
Dim k As Integer, ag As String, af As String
k = Лист8.Cells(3, 8)
Лист8.Cells(3 + k, 1) = Лист8.Cells(3, 8) + 1
Лист8.Cells(k + 3, 2) = ComboBox1 ‘наименование товара
Лист8.Cells(k + 3, 3) = Val(TextBox1.Text) 'Объем продаж
af = ComboBox1: opr = Val(TextBox1.Text)
Лист8.Cells(k + 3, 4) = TextBox3 ‘Дата начала продаж
Лист8.Cells(k + 3, 5) = Val(TextBox12.Text) ‘Продолжи-
тельность периода продаж
Лист8.Cells(k + 3, 6) = Val(TextBox2.Text) ‘Цена единицы
товара
With Лист8.Cells(k + 3, 7).Font
564
565
.Name = “Arial Cyr”: .FontStyle = “обычный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 1
End With
nom = 0
For j = 3 To 300
ag = Лист2.Cells(j, 2)
If ag = af Then
nom = j
Else
End If
Next j
ss = 0
For i = 1 To k + 1
st = Лист8.Cells(i + 2, 3) * Лист8.Cells(i + 2, 6)
Лист8.Cells(i + 2, 7) = st
ss = ss + st
Next i
Лист8.Cells(k + 4, 7) = ss
With Лист8.Cells(k + 4, 7).Font
.Name = “Arial Cyr”: .FontStyle = “полужирный”
.Size = 10: .Strikethrough = False
.Superscript = False
.Subscript = False
.OutlineFont = False
.Shadow = False
.Underline = xlUnderlineStyleNone
.ColorIndex = 3
End With
Лист8.Cells(3, 8) = k + 1
опрр = Лист10.Cells(nom, 5) + opr
Otow = Лист2.Cells(nom, 3) - opr
If Otow < 0 Then
MsgBox (“Отмените ввод. Объем продаж превышает на-
личие товара на складе”)
Else
End If
Лист2.Cells(nom, 3) = Otow: Лист10.Cells(nom, 7) = Лист2.
Cells(nom, 3)
If Otow < 5 Then ‘Этот показатель определяется по ре-
зультатам анализа
MsgBox (“Произведите закупки товара. Наличие товара
на складе достигло критических значений”)
With Лист2.Cells(nom, 3).Interior
.ColorIndex = 3
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
End With
Else
Лист2.Cells(nom, 3).Interior.ColorIndex = xlNone
Лист2.Cells(nom, 1).Interior.ColorIndex = 15
End If
Лист10.Cells(nom, 5) = опрр
выр = Лист2.Cells(nom, 5)
выр10 = Лист10.Cells(nom, 6)
Лист8.Cells(k + 3, 9) = Calendar1
Лист10.Cells(nom, 11) = Лист10.Cells(nom, 5) / ((Лист8.
Cells(k + 3, 9) - Лист1.Cells(6, 11)) + 1)
Лист2.Cells(nom, 5) = выр + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 6) = выр10 + Val(TextBox1.Text) *
Val(TextBox2.Text)
Лист10.Cells(nom, 9) = (Лист10.Cells(nom, 6) / Лист10.
Cells(nom, 5)) * Лист10.Cells(nom, 7)
End Sub