【Excel VBA】三角関数と逆三角関数の計算とグラフの表示

【Excel VBA】三角関数と逆三角関数の計算とグラフの表示

三角関数の計算

VBAでは Sin, Cos, Tan を使用して三角関数の計算ができます。

Sub CalculateTrigFunctions()
    Dim angle As Double
    angle = WorksheetFunction.Radians(30) ' 30度をラジアンに変換
    MsgBox "Sin(30°): " & Sin(angle) & vbCrLf & _
           "Cos(30°): " & Cos(angle) & vbCrLf & _
           "Tan(30°): " & Tan(angle)
End Sub
    

逆三角関数の計算

逆三角関数(アークサイン、アークコサイン、アークタンジェント)は WorksheetFunction.Asin などで計算できます。

Sub CalculateInverseTrigFunctions()
    Dim value As Double
    value = 0.5
    MsgBox "Asin(0.5) (deg): " & WorksheetFunction.Degrees(WorksheetFunction.Asin(value)) & vbCrLf & _
           "Acos(0.5) (deg): " & WorksheetFunction.Degrees(WorksheetFunction.Acos(value)) & vbCrLf & _
           "Atan(0.5) (deg): " & WorksheetFunction.Degrees(WorksheetFunction.Atan(value))
End Sub
    

グラフの表示

VBAを使用してExcelに三角関数のグラフを描画することもできます。

Sub PlotSineWave()
    Dim ws As Worksheet
    Dim i As Integer
    Dim x As Double
    Set ws = ThisWorkbook.Sheets(1)
    
    ws.Cells.Clear ' シートをクリア
    ws.Cells(1, 1).Value = "X"
    ws.Cells(1, 2).Value = "Sin(X)"
    
    For i = 2 To 100
        x = (i - 2) * 0.1
        ws.Cells(i, 1).Value = x
        ws.Cells(i, 2).Value = Sin(x)
    Next i
    
    ' グラフの作成
    Dim chartObj As ChartObject
    Set chartObj = ws.ChartObjects.Add(100, 50, 400, 300)
    With chartObj.Chart
        .SetSourceData Source:=ws.Range("A1:B100")
        .ChartType = xlXYScatterSmooth
    End With
End Sub
    

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です