Page 154 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 通常モードに戻る ┃ INDEX ┃ ≪前へ │ 次へ≫ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ ▼算定式を解きたいのですが? おか 02/9/30(月) 17:21 ┗Re:算定式を解きたいのですが? こうちゃん 02/10/1(火) 11:43 ┗Re:算定式を解きたいのですが? おか 02/10/1(火) 14:23 ┗ベタですが・・ こうちゃん 02/10/1(火) 15:19 ┗Re:ベタですが・・ おか 02/10/1(火) 17:37 ─────────────────────────────────────── ■題名 : 算定式を解きたいのですが? ■名前 : おか ■日付 : 02/9/30(月) 17:21 -------------------------------------------------------------------------
下記の様な算定式があって、L(セルのA3)を求めようとする場合、どのようにすればよいのでしょうか? ちなみに下記のT=16.8、h=11.0の場合です。TがセルのA1に、hがセルのA2です。 L=(9.8・T^2)/(2・π)Tanh(2π・h)/L =9.8×16.8^2/(2・π)Tanh(2π×11.0)/169.85=169.85 宜しくお願いします。 |
おか さん、こんにちは >下記の様な算定式があって、L(セルのA3)を求めようとする場合、どのようにすればよいのでしょうか? >ちなみに下記のT=16.8、h=11.0の場合です。TがセルのA1に、hがセルのA2です。 > >L=(9.8・T^2)/(2・π)Tanh(2π・h)/L > > =9.8×16.8^2/(2・π)Tanh(2π×11.0)/169.85=169.85 > >宜しくお願いします。 算定式をそのままExcelの計算式に置き換えて計算しても成り立たないのですが、どう計算すればいいのかロジックを教えていただけませんか? 以下の式を計算すると 2.591786 になります。 =9.8*16.8^2/(2*PI())*TANH(2*PI()*11)/169.85 |
こうちゃん さん こんにちは。 TANH(2*PI()*11)/169.85が、TANH((2*PI()*11)/169.85)でした。足りなくて、すみません。 |
おか さん、こんにちは。 検索範囲を設定して、以下のモジュールを実行してみてください HaniMin :検索範囲の先頭*100 HaniMax :検索範囲の終端*100 Limit :収束判定誤差 サンプルではA1セルに9.8が、B1セルに11が入っているときの169.80から170.00を収束判定誤差0.01で検索して169.85を表示します。 (収束判定誤差"Limit"以内の誤差で収束したと判定します) Sub test() Dim L As Double Dim S As Double Dim i As Long Dim HaniMin As Double Dim HaniMax As Double Dim Limit As Double HaniMin = 16980 HaniMax = 17000 Limit = 0.01 For i = HaniMin To HaniMax L = i / 100 S = L - _ Range("$A$1").Value * 16.8 ^ 2 _ / (2 * WorksheetFunction.Pi()) _ * WorksheetFunction.Tanh((2 * WorksheetFunction.Pi() _ * Range("$B$1").Value) / L) If S < Limit And S > -1 * Limit Then Exit For End If Next If i < HaniMax Then MsgBox "L=" & L Else MsgBox "収束しません" End If End Sub #思いっきりベタですね^^; もっといい方法がありそうかも・・ どなたかHELPです |
こうちゃん さん どうもありがとうございました。 すごく助かりました。前から出来ればと思っていたので、すごく便利に扱えます。 |