Acos、Cos、Sqr関数をVBAで使用する?

Question 66.9 Excel VBA Borad (掲示板)より Previous Next
はじめまして。VBAはさっぱりでどう質問していいかわからないのですが、
x=acosθ+5acos(β-α)=acosθ+5acos{arccos(5-4cosθ
/5√(5-4cosθ))-arccos(2-cosθ/√(5-4cosθ))}
y=asinθ+5asin{arccos(5-4cosθ/5√(5-4cosθ)) -arccos(2-cosθ/√(5-4cosθ))}
この式をプログラム上で動かしたいのですが、VBAを使用した方法を教えていただきたいです。
Answer   2004.1.23 井川はるき
acosも arccosもアークコサインとしてレスしますけど、コサインはCos関数、アークコサインはワークシート関数のACOS関数、平方根は単に1/2乗するかSqr関数(ワークシート関数だとSQRT関数)を使って求められます。
よって、上の式は
    With WorksheetFunction
        x = .Acos(θ) + 5 * .Acos(β - α) _
        = .Acos(θ) + 5 * .Acos(.Acos(5 - 4 * Cos(θ) _
        / 5 * Sqr(5 - 4 * Cos(θ))) - .Acos(2 - Cos(θ) _
        / Sqr(5 - 4 * Cos(θ))))
    End With
といった感じになります。 (xには比較演算の結果であるブール型の値が代入されますので、 最初の .Acos(θ) + 5 * は、いらないようにも思いますが)
なお、θ、α、ベータは弧度でないといけません。
また、XL95で運用させる場合には、WorksheetFunctionオブジェクトはありませんので、
With WorksheetFunctionWith Application にしてください。
下の式は上の式と大差ありませんので、ご自身でやってみてください。 アークサインはワークシート関数のASINで求められます。

 

Excel VBA Macro