ОСНОВЫ ПРОГРАММИРОВАНИЯ

  • pdf
  • 10.05.2020
Публикация на сайте для учителей

Публикация педагогических разработок

Бесплатное участие. Свидетельство автора сразу.
Мгновенные 10 документов в портфолио.

Иконка файла материала 31. ОСНОВЫ ПРОГРАММИРОВАНИЯ.pdf

3. Программа «Вычисление НДС»

Задание. Создать программу «Вычисление НДС (налога на добавленную стоимость)», по которой по введенной процентной ставке налога и суммы (без проверки корректности введенных данных) выводится величина НДС () и сумма без налога. Если товар не облагается налогом, то процентную ставку налога принять за 0.

 

1.     Запустить VBA и создать новый проект.

2.     Переименовать форму - «Вычисление НДС».

3.     Добавить на форму объекты (для всех неоговоренных специально объектов свойство Font – шрифт Tahoma, размер 12): 

Объект

Свойство

Значение

Label

(надпись)

Name

LabelTop

Caption

Налог на добавленную стоимость

Font

Tahoma, 14

Frame

(рамка)

Name

FrameSum

Caption

Стоимость

Frame

(рамка)

Name

FrameNDS

Caption

НДС

Объект

Свойство

Значение

CheckBox 

(флажок)

Name

CheckBox1 

Caption

Облагается налогом

Value

True (включен)

Command Button

(кнопка)

Name

CmdClear

Caption

Очистить

Command Button

(кнопка)

Name

CmdCalc

Caption

Вычислить

Command Button

(кнопка)

Name

CmdExit

Caption

Выход

Следующие объекты располагаются на рамке FrameNDS (перед вставкой на поле, выделить рамку):

TextBox

(текстовое поле)

Name

TextNDS13

Text

13 (текст по умолчанию)

BackColor

(цвет фона)

TextAlign

2

Label

(надпись)

Name

Label

Caption

%

Следующие объекты располагаются на рамке FrameSum (перед вставкой на поле, выделить рамку):

Label

(надпись)

Name

LabelSum

Caption

Сумма

TextBox

(текстовое поле)

Name

TextSum

BackColor

(белый)

Text

 

TextAlign

3

Label

(надпись)

Name

LabelNDS

Caption

НДС

TextBox

(текстовое поле)

Name

TextNDS

BackColor

(белый)

TextAlign

3

Enabled

False

Label

(надпись)

Name

LabelNewSum

Caption

Сумма без НДС

TextBox

(текстовое поле)

Name

TextNewSum

BackColor

(белый)

TextAlign

3

Enabled

False

4.     Включить проверку переменных (Option Explicit).

5.     Запрограммировать щелчок на кнопке Выход на завершение программы и сделать ее кнопкой отмены.

6.     Запрограммировать щелчок на кнопке Очистить: в рамке Стоимость все текстовые поля принимают нулевое  значение (пустая строка), включается флажок Облагается налогом (значение True), курсор переводится в текстовое окно для суммы (метод SetFocus): 

 

        Private Sub CmdClear_Click()       

        ’Текстовые поля обнуляются      

TextSum = "" 

TextNDS = "" 

        TextNewSum = ""      

        ’Ставится флажок     

CheckBox1 = True      ’Курсор ставится в текстовое поле Сумма        

TextSum.SetFocus      End Sub

7.     Запрограммировать щелчок на кнопке Вычислить.         

Примечания.  

§  Поскольку в текстовое поле могут быть ошибочно введены не только цифры, но и другие символы, то прежде чем использовать значение поля в вычислениях, переводим содержимое поля в число (функция Val).

§  Результаты вычислений – вещественные числа с несколькими знаками после запятой. Однако в реальной жизни денежные суммы вычисляются с точностью до сотых (копеек). Поэтому для вывода исходной суммы, НДС и суммы без НДС используем денежный формат (функция Format и аргумент "currency").

        Private Sub CmdCalc_Click()        

        Dim S As Currency, N As Currency, SN As Currency          

'Вычисления 

        S = Val(TextSum)      

        If CheckBox1 Then N = S * Val(TextNDS13) / 100 Else N = 0      

        SN = S – N       

        'Вывод на форму       

TextSum = Format(S, "currency") 

        TextNDS = Format(N, "currency")          

TextNewSum = Format(SN, "currency") 

End Sub  

ОБРАЗЕЦ

3. «Вычисление НДС» (задание 1).

Option Explicit

Private Sub CmdCalc_Click()

Dim S As Currency, N As Currency, SN As Currency

'Вычисления

S = Val(TextSum)

If Check Then N = S * Val(TextNDS13) / 100 Else N = 0

SN = S - N 'Вывод на форму

TextSum = Format(S, "currency")

TextNDS = Format(N, "currency")

TextNewSum = Format(SN, "currency")       

End Sub

Private Sub CmdClear_Click()

TextSum = ""

TextNDS = ""

TextNewSum = ""

Check = True

TextSum.SetFocus

End Sub

Private Sub CmdExit_Click()

End

End Sub