Подсчёт среднего

Автор Посетитель 05.03.2023, 05 марта 2023, 10:02

Посетитель 05.03.2023

Всем привет.Помогите пожалуйста создать процедуру, которая будет добавлять под таблицей на каждом листе в первой пустой строке надпись "Средняя сделка" в столбце слева от "Коммерческого предложения" и функцию СРЗНАЧ по всем ячейкам с суммами коммерческого предложения. Вот что у меня получилось:
Sub Среднее()
Dim sh As Worksheet
For Each sh In ThisWorkbook.Worksheets
  With sh.Range("H2")
  .End(xlDown).Offset(1, 0) = "Средняя сделка"
  .End(xlDown).Offset(1, 1).FormulaLocal = "=СРЗНАЧ(I2:I10)"
  End With
Next sh
End Sub
Только у меня задан конкретный диапазон в столбце "I", а на разных листах он состоит из разного количества ячеек.

Администратор

Макрос
Sub Среднее()
Dim sh As Worksheet, lr As Long
For Each sh In ThisWorkbook.Worksheets
    lr = sh.Range("H2").End(xlDown).Row
    sh.Cells(lr + 1, "H").Value = "Средняя сделка"
    sh.Cells(lr + 1, "I").FormulaLocal = "=СРЗНАЧ(I2:I" & lr & ")"
Next sh
End Sub
[свернуть]

Посетитель 05.03.2023