Определение площади овала - VBA

Узнай цену своей работы

Формулировка задачи:

Добрый день, специалисты по экселю. Подскажите решение проблемы. Как макросом подсчитать площадь автофигуры "Овал 1" и автоматически отобразить это число - в ячейке B3 ? Событие - Calculate. Из математики знаю, что площадь овала - это = Пи*R1*R2 (R1 и R2 - это меньший и больший радиусы. Пи = 3,14) Поскольку область выделения любой автофигуры экселя - это прямоугольник, то формула будет выглядеть так : Пи*(ШиринаАвтофигуры/2)*(ДлинаАвтофигуры/2) То есть вопрос - как это вложить это вычисление в макрос на событие Calculate, с выводом результата в ячейку B3.

Решение задачи: «Определение площади овала»

textual
Листинг программы
Private Sub Worksheet_Change(ByVal Target As Range)
  Dim objShape
    Dim Hsh As Single
    Dim Wsh As Single
    Dim Pi As Double
    Dim ШиринаАвтофигуры As Single
    Dim ВысотаАвтофигуры As Single
    
    Pi = Application.WorksheetFunction.Pi
    Set objShape = ActiveWorkbook.Sheets(3).Shapes(1)
    ВысотаАвтофигуры = objShape.Height * (25.4 / 720)
    ШиринаАвтофигуры = objShape.Width * (25.4 / 720)
    Range("B3").Value = WorksheetFunction.Round(Pi * (ШиринаАвтофигуры / 2) * (ВысотаАвтофигуры / 2), 2)
End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

12   голосов , оценка 3.917 из 5
Похожие ответы