- ベストアンサー
VBA 自然対数
今,マクロを組み上げており計算上自然対数が必要なのですが,自然対数関数LNを 使用すると, 「コンパイルエラー subまたはfunctionが定義されておりません」 いうエラーが出て困っています. このエラーを解消する方法,または,自然対数を算出できる別の方法があれば ご教授願えないでしょうか? 今組んでいる該当部分を下記に転記いたします y = Ln(Pw / 611.213) よろしくお願いいたします。
- Ashgin
- お礼率8% (10/122)
- Visual Basic
- 回答数2
- ありがとう数1
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
次のようにすればよいでしょう。 y = WorksheetFunction.Ln(Pw/611.213)
その他の回答 (1)
- himajin100000
- ベストアンサー率54% (1660/3060)
'Log関数というのがある。 'http://msdn.microsoft.com/en-us/library/thc0a116%28v=vs.80%29.aspx Sub hoge() MsgBox (Log(Exp(1))) '当然1 MsgBox (Log(100) / Log(10)) '10を底とする100の対数 = 常用対数の実現) End Sub
関連するQ&A
- どうして ln1 は 0なのか?(自然対数)
L(z)= ln |z| + iarg(z) (arg(z)は 0~2πの範囲) この式のzに、それぞれ L(-1) L(1-i) L(-1+i) ・・・を当てはめて計算せよという問題があります。 答えは、添付画像の通りで、ほぼ納得できたのですが、 【どうしてln1が、消えているのか】が 理解できずに困っています。 数学の基礎知識が足らずにすみませんが、私の理解は「lnとは自然対数のことである」といったレベルです。対数については、大体知っていますが、 自然対数となると何か特別なことをするのかどうか? わからなくなってしまいます。 私の今の予想は、 ln1とは、 log1^1 = 0 となるような、何らかのことが起こっている・・・というものです。 自然対数をネットでいろいろ調べたのですが、このあたりの計算方法についての解説を独学することができませんでした。 アドバイスをお願いします。
- ベストアンサー
- 数学・算数
- Excel VBA で自然対数の関数Lnが使えない
Windows XP SP2, office excel 2003 VBAで自然対数を使うため,Ln()の関数を使おうとしたのですが実行すると「関数が定義されていません」というエラーメッセージが出ます.ネットで調べると,ワークシートでもVBAでも普通,Ln()の関数は使えるようです. Lnの後ろにカーソルがある状態でF1を押してヘルプを出そうとすると,「キーワードが見つかりません」ではなく,「ページが見つかりません」と表示されます.「キーワードが見つかりません」は,でたらめな文字列のヘルプを出そうとすると表示されるものです. 同様にLog10()も使うことができませんでしたが,EXP()は使えます.なんとかVBAでLn()を使えるようにすることはできないでしょうか?
- ベストアンサー
- Visual Basic
- 自然対数変換について
Pm=Pm''(1+t) という式を自然対数変換を加えることで、 lnPm=lnPm''+ln(1+t) となるとありました。 このときのlnってなんでしょうか? わたしはlogと同じものだと考えていたのですが、もしlogなら、上記の式は、 logPm’’=logPm-log(1+t)となり、式中に出てくる記号はマイナスになります。 ということは、logとは違うもので、計算方法もちがうのかな・・?と思いました。 ではいったいlnってなんなんですか!?
- 締切済み
- 経済
- 自然対数を用いた1.0005の5乗の概算値の導出法
自然対数を用い、対数や逆対数の表を引かずに1.0005の5乗の概算値を求めよという問題についてです。 (答えは、xの値が非常に小さいときの公式 (1+x)^p=1+px より、1.0025であることはわかるのですが、下記に書きましたが自然対数をどのように使うのか、わかりそうでわからずモヤモヤしております。) 下記についてどなたかわかる方ご教示お願い致します。 (社会人ですが高校生の数学レベルでお願い致します。) 上記は、R.P.Bauman 熱力学序説 東京化学同人 1968.の付録「基礎的な計算法」章末問題にあるものです。 「基礎的な計算法」の中の、自然対数についての説明は下記の通りです。 ----------------- 『数eはxの小さな値に対する関数(1+x)^(1/x)の極限値として定義される。それゆえ、xの十分小さな値に対して(1/x)ln(1+x)=ln e = 1 すなわち ln(1+x)= x である。』 ------------------ これからN=1.0005の時、ln N=0.00050はわかります。そして、1.0005の5乗は(1+0.0005)の5乗として、多分、1の5乗+0.0005×5なのだろうと思います。ですが、自然対数を用いて「(1+0.0005)の5乗」=「1の5乗+0.0005×5」がどのように導けるか、その導出がわかりません。 また、微分を使った 「1>>xの時の (1+x)^p=1+px」の 高校生向けの証明はみつかりましたが、自然対数の場合どのように概算値を導いたら良いのでしょうか。証明(といっていいのかわかりませんが)を教えてください。
- ベストアンサー
- 数学・算数
- 自然対数Ln(x)からxを求める方法について
エクセル2007を使用し、あるグラフの近似曲線(対数近似)を描き、y=0.394Ln(x)+0.88という式を得ました。 y=2.041の時のxの値を求めたいのですが, 自然対数Ln(x)からxを求める方法があるでしょうか? よろしくお願いします。
- ベストアンサー
- 数学・算数
- 自然対数の底e ネイピア数の定義と性質
自然対数の底eですが、e = lim(n→∞) (1+1/n)^n とあります(定義でしょうか?)。 一方、lim(x→ -∞)(1+1/x)^x = e とするものもあります。これは定義から誘導されるでしょうか。簡単だと思ったのですが。1よりちょっと大きいものの∞乗であり、下は1よりちょっと小さいものの-∞乗ってことですから等価だって示されそうなのですが。 付随しておたずねしますが、lnとか、微分とか、複素関数とかとにかくeはあちこちに出てきてゆるぎない関係式を示すのですが、どれが定義で、どれがその定義から誘導される性質なのか混乱する面があります。あるいは定義が複数あって等価であるとかです。すくなとも冒頭に示したものは簡単にいけるかと思ったのですが、ちょっとてこずりました。 あとちょっと不思議なのですが、自然対数の底eのことをネイピア数といいますが、そういう風に明示的に書かないテキストもいっぱいあるように思います。呼称についてあんまり統一されていない理由が何かあるでしょうか。 よろしくお願いします。
- 締切済み
- 数学・算数
- エクセルでマクロを実行するとコンパイルエラー
エクセルでVBエディタでソースコードを記述し、マクロを実行すると、コンパイルエラー、「SubまたはFunctionが定義されていません」とエラーが出ます。これはどういうエラーですか?何が間違っているのですか?
- ベストアンサー
- オフィス系ソフト