R50 87812d2e0ab9ed464f7d1333e2778ef6
Программист VBA

Анализ качества питьевой воды филиала №1 ПМУП «УТВС»

Добавлено 04 окт 2022 в 12:27
В рамках анализа качества питьевой воды сотрудникамифилиала №1 ПМУП «УТВС» разработана аналитическая таблица учета нормативных и фактических величин содержания веществ в питьевой воде. Однако аналитика исходных данных по пробам воды не разработана: Задача 1. Необходимо, чтобы последовательно по строкам (пробам) проверялось условие соответствия нормативу (по 33 веществам). Если оно больше норматива (хотя бы по одному веществу), то ячейке назначается знак «+», в противном случае: “-“. Число несоответствий не должно суммироваться. Задача 2. Необходимо, чтобы автоматически велся подсчет несоответствующих нормативам проб по группам показателей (микробиология (мкб), органолептика (орг), обобщенные (общ), неорганические вещества (неорг), радиология (рад).Если число отклонений от норматива в каждой группе больше норматива (хотя быпо одному веществу), то ячейке назначается цифра “1”, в противном случае этой ячейке назначается “0”. Другими словами, вне зависимости от количества ненормативных значений аналитических показателей в группе, превышающих нормативные величины, значение ячейки должно быть равным 1. Задача 1 решается применением формулы массива Excel в ячейках столбца “E” (Контроль норматива (“+” – несоответствие):

{=ЕСЛИ(СЧЁТ(ЕСЛИ(K8:AQ8-$K$3:$AQ$3>0;))>=1;"+";"-")} ЕСЛИ(K8:AQ8-$K$3:$AQ$3>0;) 1. частная формула рассчитывает массив логических величин {"ИСТИНА" / "ЛОЖЬ"}, назначая "ИСТИНА" в случае превышения фактическими значениями проб на вещество их нормативных величин K8:AQ8- массив нормативных величин показателей в формате абсолютных ссылок $K$3:$AQ$3- массив тестовыхвеличин показателей (текущая строка) в формате относительных ссылок СЧЁТ(ЕСЛИ(K8:AQ8-$K$3:$AQ$3>0;)) 2. частная формула рассчитывает количество логических величин "ИСТИНА", полученных формулой 1. ЕСЛИ(СЧЁТ(ЕСЛИ(K8:AQ8-$K$3:$AQ$3>0;))>=1;"+";"-") 3. итоговая формула приписывает ячейке символ "+", если в частной формуле 2 количество "ИСТИНА" >=1, в противном случае: "-" Задача 2 решается применением пользовательской
функции (UDF), разработанной на языке программирования Visual Basic for Applications Excel в отдельных столбцах F:J аналитической таблицы, соответствующих запрашиваемым
группам показателей.

1a760c126d B688bafb03