Страницы: 1
RSS
Вычисление макросом среднего арифметического в промежуточных итогах таблицы
 
Здравствуйте помогите пожалуйста сутки уже ковыряюсь не могу решить задачку для вычисления среднего значения, суть такова в столбце А ищет похожий текст (в примере "Итогона ПК")  и в этой строчке уже в столбце "С" и в столбце "Е" вычисляет среднее значения на 100м в среди данных в этом диапозоне . Всем спасибо за помощь
Код
Sub Среднее_по_искомому_тексту()
    Dim strFistCell As String
    Dim strLastCell As String
    Dim strFormula As String
    Dim c As Range
    Dim SrchRng
    lr = Cells(Rows.Count, 1).End(xlUp).Row
    Set c = Range("A:A").Find("Итого на ПК:", LookIn:=xlValues)
    For i = 1 To lr
    If Cells(i, 1).Value Like c Then
    Range("C" & i).Select
    Range("E" & i).Select
    Selection.Row = 1 Then Exit Sub
    strFistCell = ActiveCell.Offset(-1, 0).End(xlUp).Address
    strLastCell = ActiveCell.Offset(-1, 0).Address
    strFormula = "=AVERAGE(" & strFistCell & ":" & strLastCell & ")"
    ActiveCell.Formula = strFormula
    End If
    Next i
 End Sub
Изменено: aset224 - 09.04.2020 12:23:03 (несоответствие правилам форума)
 
aset224, здравствуйте
Описание не очень - сделал, как понял. Файл слишком большой для примера - уменьшил (на первый раз делаю за вас  ;) )
Выделить область данных, в которой нужны только крайние столбцы (первый - признак, последний - для вычисления и вставки) и нажать кнопку. В примере область данных: «A2:C26»
Если угадал, то название темы: Вычисление макросом среднего арифметического в промежуточных итогах таблицы
Изменено: Jack Famous - 09.04.2020 12:39:44
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous, Спасибо большое, и прошу прощения за описание, думаю заработает
 
aset224, пожалуйста
Поправил диапазон данных в инструкции, вынес инструкцию в название спойлера
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous,спасибо огромное, работает) но есть один нюанс я заполняю пустые прочерком "-", он их не учитывает в вычислении среднего значения, но если за ПК нет числовых данных вылетает ошибка.
P.S. с меня кофе. скинь мне свой киви или yandex money
 
Цитата
aset224: есть один нюанс
скиньте сюда пример - посмотрим
Цитата
aset224: с меня кофе. скинь мне свой киви или yandex money
давайте останемся "на вы" всё-таки. Заменил цитату в подписи на номер кошелька
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous,
 
aset224, за кофе спасибо)
Проверяйте: теперь он любые НЕчисловые данные в проставляемом столбце считает нолями. Excel в таком случае исключил бы такие поля из расчёта (см. скрин)
Также добавлены проверки и итоговое сообщение с временем выполнения в заголовке
Код
Изменено: Jack Famous - 10.04.2020 13:21:13 (Обновил скрин)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous,
считает с ошибкой, как можно это исправить?
Изменено: aset224 - 10.04.2020 13:55:56 (не тот скрин)
 
Цитата
aset224: считает с ошибкой
блин - я же вам про это и говорил)))
Цитата
Jack Famous: теперь он любые НЕчисловые данные в проставляемом столбце считает нолями. Excel в таком случае исключил бы такие поля из расчёта
то есть "ошибка" была в том, что при вычислении среднего арифметического полученную сумму он делит на количество ячеек с учётом прочерков  :D
Код с комментариями
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous, Спасибо очень Вам признателен и благодарен)
с меня кофеёк)
 
aset224, без проблем - обращайтесь  ;)
за кофе благодарю  :)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
А нужен именно макрос?
=SUBTOTAL(1;INDEX(C:C;IFERROR(LOOKUP(2;1/($A$1:A7=A8);ROW($A$1:A7)+1);2)):C7)
По вопросам из тем форума, личку не читаю.
 
Исправлена ошибка деления на ноль (когда для итога не было данных)
Код с комментариями
Изменено: Jack Famous - 13.04.2020 09:41:33
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
 
Jack Famous, Благодарю Вас работает)
 
aset224, пожалуйста  ;)
Во всех делах очень полезно периодически ставить знак вопроса к тому, что вы с давних пор считали не требующим доказательств (Бертран Рассел) ►Благодарности сюда◄
Страницы: 1
Наверх