Курсовая работа: Почта
End Sub
'функция, рассчитывающая стоимость отправки
Private Function DispatchCost(City As String, Kind As String, Optional weight As Double)
Sheets("Стоимость отправки").Select
Range("A2").Select
Selection.CurrentRegion.Select
n = Selection.Rows.Count
For i = 3 To n Step 1
If InStr(1, Sheets("Стоимость отправки").Range("A" & i).Value, City, vbTextCompare) > 0 Then
If Kind = "посылка" Then DispatchCost = weight * Range("B" & i).Value
If Kind = "бандероль" Then DispatchCost = weight * Range("E" & i).Value
If Kind = "заказное письмо" Then DispatchCost = weight * Range("H" & i).Value
End If
Next i
End Function
'Пересчёт стоимости отправки корреспонденции при изменении города. Аналогичный код обрабатывает изменение веса и типа корреспонденции
Private Sub ComboBox2_Change()
If IsNumeric(TextBox6.Text) And ComboBox1.Value <> "" And ComboBox2.Value <> "" And TextBox6.Text <> "" _
Then Label10.Caption = DispatchCost(ComboBox2.Value, ComboBox1.Value, CDbl(TextBox6.Text)) _
Else Label10.Caption = ""
End Sub
'Отчёт по направлениям (отправка)
Private Sub CommandButton5_Click()
Worksheets("Отчёты").Activate
Cells(3, 1).Select
Selection.CurrentRegion.Select
n = Selection.Rows.Count + 2
Worksheets("Отправленная корреспонденция").Select
Cells(3, 1).Select