- ベストアンサー
エクセル4.0のマクロ
myRange様、Wendy02様、ありがとうございます。 何らかの手違いで前IDでのログインができず、お礼が遅くなりました。 この場をお借りしてお礼と謝罪をしたいと思います。 前回のはうまくいきました。 で、下のARGUMENTってのは何でしょう?? サイトとか探しては見たものの、なかなかなくって… これもVBに書き換えたいのですが、お力を貸してください。 A列128行目から始まっています。 =ARGUMENT("contract") =ARGUMENT("time") =ARGUMENT("market") =ARGUMENT("strike") =ARGUMENT("rate") =ARGUMENT("vol") =ARGUMENT("div") =ARGUMENT("value") =SET.NAME("difference",BS_Fair_Value(contract,time,market,strike,rate,vol,div)-value) =WHILE(ABS(difference)>0.000001) =BS_Vega(contract,time,market,strike,rate,vol,div) =IF(A138=0,RETURN(""),) =SET.NAME("vol",vol-difference/A138) =SET.NAME("difference",BS_FairValue(contract,time,market,strike,rate,vol,div)-value) =NEXT() =RETURN(vol) よろしくお願いいたします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 >ARGUMENTってのは何でしょう?? ARGUMENT は、 BS_Fair_Value(contract,time,market,strike,rate,vol,div) のサブルーチンか、ユーザー定義関数の引数になるものだと思います。 現状では、情報が不足していますので、VBAのコードにはなりません。 BS_Fair_Value BS_Vega の二点がありません。
その他の回答 (1)
- myRange
- ベストアンサー率71% (339/472)
またまた登場、myRangeです。 wendy02さんも指摘されてますが、 1.BS_Fair_Value 2.BS_Vega 3.BS_FairValue この3つの定義関数が提示されてませんね。 そして、1,3は同じものだろうと推測はできますが、 このコードがちゃんと動作しているなら、1,3は別物ということになります。 この3つ(2つ)も最終的にはVBAに変換しないといけないわけですよね。 ま、それは置いといて質問の部分だけは以下のようかと。 '------------------------------------ Function Tekito(contact, Xtime, market, strike, rate, vol, div, value) Dim Difference As Double Dim Dumy As Double Difference = BS_Fair_Value(contact, Xtime, market, strike, rate, vol, div) - value Do While Abs(Difference) > 0.000001 Dumy = BS_Vega(contact, Xtime, market, strike, rate, vol, div) If Dumy = 0 Then Tekito = "" Exit Function End If vol = vol - Difference / Dumy Difference = BS_Fair_Value(contact, Xtime, market, strike, rate, vol, div) - value Loop Tekito = vol End Function '----------------------------------------- Function名は、Tekito(適当)にしておきました。(^^;;; また、引数名、time は、Xtime に変更。 Argumentをネットで検索してみましたが参考になるようなサイトは なかなかヒットしませんね。 ですが、コードとArgumentの英語の意味からして、 関数などの引数を表わしているということは推測できるのではないでしょうか。 で、次のサイトにちょこっとサンプルが載ってます。覗いてみてください。 http://support.microsoft.com/kb/123189/en-us/ 実のところ、参考になればと回答はしてますが、 当方も4.0マクロは使ったことありませんし よく知りません。。。。← おい、おい。(^^;;; が、眺めてみれば色々見えてはきます。。。
お礼
またまたありがとうございます。 おまけに”Tekito”まで想像のうえ創造していただいて(寒い??) だいぶ見えてきた気がするので、ちょっとがんばってみます。 本当にありがとうございます。 また教えてください。
お礼
度々どうもありがとうございます。 だいぶ見えてきた(気がする)ので、ちょっとがんばってみます。 またわからないことがあったら教えてください。 ありがとうございます。