Автор: сн___19 28.10.2009, 12:34
Помогите пож сост программку. VBA. Для организации ввода и вывода исходных данных и результатов использовать:
б) ячейки рабочего листа.
Оценить уровень заработной платы работника, сравнив ее с размером прожиточного минимума. Превышение более чем в 15 раз – соответствует высокому, менее 7 раз - очень низкому, в промежутке от 7 до 15 раз – среднему уровню заработной платы
Автор: сн___19 28.10.2009, 12:48
№ теста Значение zp Комментарий
1 0 Введено некорректное значение
2 -1 500 000 Введено некорректное значение
3 3500 000 Высокий уровень заработной платы
4 3 000 000 Средний уровень заработной платы
5 2 200 000 Средний уровень заработной платы
6 1 400 000 Средний уровень заработной платы
7 1 200 000 Низкий уровень заработной платы
и вот че-то мутила не понятное))
Sub prim4a() ' Вывод данных в ячейки рабочего листа
'Составил студент группы ЗУ-11с Михеенкова С.А.
Dim zp As Long
Dim S As String, P As Integer, I As Integer, K As Integer
K = InputBox("Сколько всего тестов?", "Ввод")
'Формирование заголовка
Cells(1, 1) = "№ теста"
Cells(1, 2) = "Значение zp"
Cells(1, 3) = "Комментарий"
For I = 1 To K ' цикл для повторения расчетов
zp = InputBox("Введи значение zp", "Ввод")
If zp < 200000 Then
R = "Введено некорректное значение"
Else
If zp > 3000000 Then
R = "Высокий уровень заработной платы"
Else
If zp < 1400000 Then
R = "Низкий уровень заработной платы"
Else
R = "Низкий уровень заработной платы"
End If
End If
Cells(I + 1, 1) = I
Cells(I + 1, 3) = "Комментарий"
Next I
End Sub

на цифры не обращайте внимания. мне главное суть...
Автор: Vago 29.10.2009, 9:33
Цитата(сн___19 @ 28.10.2009, 14:48)

и вот че-то мутила не понятное))
А где размер прожиточного минимума? Вся ж логика должна быть к нему привязана.
Автор: сн___19 29.10.2009, 11:10
Цитата(Vago @ 29.10.2009, 9:33)

А где размер прожиточного минимума? Вся ж логика должна быть к нему привязана.
сначала я взяла 200.000, ну и соответственно 200000х15раз=3000000, 200000х7раз=1400000 ,
а вообще реальный БПМ=250070.
либо нужно как-то через формулу его выразить.....

...че-то я запуталась..

помогите...распутаться
Автор: kaa 29.10.2009, 12:56
Цитата
соответственно 200000х15раз=3000000
а зачем вы умножаете прожиточный минимум на зарплату?
их надо сравнивать
Автор: Vago 29.10.2009, 13:34
Цитата(kaa @ 29.10.2009, 14:56)

а зачем вы умножаете прожиточный минимум на зарплату?
каа, где Вы увидели умножение
на зарплату?
Автор: сн___19 29.10.2009, 14:28
Цитата(kaa @ 29.10.2009, 12:56)

а зачем вы умножаете прожиточный минимум на зарплату?
их надо сравнивать
потому что не придумала каким образом их сравнить и отразить в программе
Автор: Vago 29.10.2009, 14:56
Код
Sub prim4a()
Dim zp As Long ' Зарплата
zpMin = 200000 ' Прожиточный минимум
kV = 15 ' Коэффициент для "высокой" зарплаты
kN = 7 ' Коэффициент для "низкой" зарплаты
zpV = zpMin * kV ' Значение "высокой" зарплаты
zpN = zpMin * kN ' Значение "низкой" зарплаты
'формирование заголовка
Cells(1, 1) = "№ теста"
Cells(1, 2) = "Значение zp"
Cells(1, 3) = "Уровень дохода"
k% = InputBox("Сколько всего тестов?", "Ввод")
For i% = 1 To k%
zp = InputBox("Введи значение zp", "Ввод") ' Вводим очередную зарплату
Cells(1 + i%, 1) = i%
Cells(1 + i%, 2) = zp
If zp < 0 Then ' Не может быть отрицательной
level$ = " Ошибка в данных"
Else
If zp > zpV Then ' Больше "высокой"
level$ = " Высокий"
Else
If zp < zpN Then ' Меньше "низкой"
level$ = " Низкий"
Else ' "средняя"
level$ = " Средний"
End If
End If
End If
Cells(1 + i%, 3) = level$
Next i%
End Sub
Прятать в теле программы инициализацию параметров, начальные значения которых от запуска к запуску могут меняться (
zpMin,
kV,
kN ),- нехорошо. Для самопроверки, предлагаю программку доделать, так чтобы эти три значения брались из листа, а потом в этом листе ещё и печатались бы вычисленные
zpV и
zpN.
Следующий этап самопроверки - автоматическая очистка листа в начале работы макроса от результатов предыдущего запуска. Ну а потом уже можно и колоночки в разные цвета раскрасить...
Автор: сн___19 29.10.2009, 15:23
Цитата(Vago @ 29.10.2009, 14:56)


ооооо!!!! вы не представляете, как я вам благодарна!! большое человеческое СПАСИБО!!! есть над чем поразмыслить. Спасибо, что уделили мне время...
Автор: Vago 29.10.2009, 15:45
Да не за что
Захотите показать "плоды размышлений" - милости прошу!.. 