Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


2876 / 13646 ツリー ←次へ | 前へ→

【65464】公式から値XおよびYを算出 ts200r 10/5/24(月) 14:23 質問[未読]
【65466】Re:公式から値XおよびYを算出 超初心者 10/5/24(月) 15:04 発言[未読]
【65473】Re:公式から値XおよびYを算出 ts200r 10/5/24(月) 20:14 質問[未読]
【65474】Re:公式から値XおよびYを算出 kanabun 10/5/24(月) 21:01 発言[未読]
【65475】Re:公式から値XおよびYを算出 kanabun 10/5/24(月) 21:39 発言[未読]
【65480】Re:公式から値XおよびYを算出 ts200r 10/5/25(火) 11:16 お礼[未読]
【65479】Re:公式から値XおよびYを算出 超初心者 10/5/25(火) 10:22 発言[未読]
【65481】Re:公式から値XおよびYを算出 ts200r 10/5/25(火) 11:28 お礼[未読]
【65486】Re:公式から値XおよびYを算出 kanabun 10/5/25(火) 21:22 発言[未読]
【65503】Re:公式から値XおよびYを算出 ts200r 10/5/28(金) 11:03 お礼[未読]

【65464】公式から値XおよびYを算出
質問  ts200r E-MAIL  - 10/5/24(月) 14:23 -

引用なし
パスワード
   お知恵を拝借させていただきたく思います

セルA1に「X」(平米数)
セルB1に「Y」(平米数)
セルC1に手動入力(平米数)

セルA2に手動入力「A」(単価)
セルB2に手動入力「B」(単価)

公式 8/10*(X*(1/3)*(1/2)*(A/B))=1/3*Y
上記の公式を使用して「X」および「Y」に数値が自動で入力されるためにはどのような関数もしくはVBAが必要になりますでしょうか?


例:セルC1「2,220」・セルA2「10,000」・セルB2「40,000」とした場合セルA1とセルB1に自動で値を表示させる

    A    B    C
1            2,220
2    10,000    40,000


お知恵を拝借させていただきたく思います
よろしくお願いいたします

【65466】Re:公式から値XおよびYを算出
発言  超初心者  - 10/5/24(月) 15:04 -

引用なし
パスワード
   ▼ts200r さん:

数学(?)から離れてずいぶん経ってしまいました^^;;

おぼろげな記憶によると、X,Y、2つの値を出すには、
2つの式(連立方程式?)が必要だった気がします。

そうでない場合、答えが複数出てくるかと。
(Y=nXを満たす全ての値、とか。)

おバカでしたらゴメンなさい^^;;


参考までに、ご質問の例題の場合、
A1,B1に入る値は何でしょう?
また、公式内で、C1はどこに当たるのでしょう?


回答ではありませんので、スルーでもOKです^^;

【65473】Re:公式から値XおよびYを算出
質問  ts200r E-MAIL  - 10/5/24(月) 20:14 -

引用なし
パスワード
   お世話になります
私は数学が大の苦手として過ごしてきましたので・・・ (^-^; 滝汗です

おっしゃるとおり上記の書き込みではよくわかりません・・・ orz

セル「A1+B1=C1」となります
セル「C1」がわかっている場合に

公式 「 8/10*(X*(1/3)*(1/2)*(A/B))=1/3*Y 」が満たされる 「A1」と「B1」を求めたい計算式を出したいのです


セル「C1」が「2,220」・セルA2「10,000」・セルB2「40,000」だった場合

公式「8/10*(X*(1/3)*(1/2)*(A/B))=1/3*Y」に当てはめると、
セル「A1(X)」が約「2,018.20」 セル「B1(Y)」が約「201.80」となります

現在はセル「A1」の値を公式に当てはまるように手動で変動させています
セル「A1(X)」の値さえ求めることができればセル「B1(Y)」は自動的(C1-A1)で求めることができると思っております

私が作成したものは以下のようにしてみましたが・・・使いずらいです orz
セル「C1」の値はもともと分かっている値を入力し、セル「A3」と「A4」がなるべく一致するように手動でセルA1を変化させます
    A      B           C
1    20,8.20   =C1-A1        2,220
2    10,000   40,000        
3    =(8/10)*(A1*(1/3)*(1/2)*(A2/B2)
4    =(1/3)*B1


計算結果としては、セル「A3」は「67.27333」 セル「A4」は「67.26667」となります

セル「C1」に値を入力すればセル「A1」及びセル「B1」に値が求まるように計算式を作成したいと思っております

分かりにくい説明で大変申し訳ございませんがよろしくお願い致します

【65474】Re:公式から値XおよびYを算出
発言  kanabun  - 10/5/24(月) 21:01 -

引用なし
パスワード
   ▼ts200r さん:

>セル「A1+B1=C1」となります

ということは ↑ と ↓ とで 連立方程式になるのではありませんか?
 
>「8/10*(X*(1/3)*(1/2)*(A/B))=1/3*Y」

【65475】Re:公式から値XおよびYを算出
発言  kanabun  - 10/5/24(月) 21:39 -

引用なし
パスワード
     x + y = C1      ・・・・・・・・・(1)
  4/30 * A/B * x = y/3 ・・・・・・・・・(2)

と考えると、

Sub Try1()
 Dim A As Double, B As Double, C1 As Double
 Dim x As Double, y As Double

 C1 = 2200  '[C1].Value
 A = 10000  '[A2].Value
 B = 40000  '[B2].Value

 y = 5 / 2 * B / A + 1
 y = C1 / y
 x = C1 - y
 Debug.Print "x="; x, "y="; y
End Sub

これを実行すると イミディエイト・ウィンドウに

x= 2000    y= 200

と表示されます。

【65479】Re:公式から値XおよびYを算出
発言  超初心者  - 10/5/25(火) 10:22 -

引用なし
パスワード
   ▼ts200r さん:

公式を解いていくと、

A1=(B2*5*C1)/(A2*2+B2*5)
B1=C1-A1

こんなところでしょうか。

例題では、
A1=2018.181818・・・・
となるので、適当に丸める必要あり??


・・・・VBAではありませんが^^;;

【65480】Re:公式から値XおよびYを算出
お礼  ts200r E-MAIL  - 10/5/25(火) 11:16 -

引用なし
パスワード
   ▼kanabun さん:

公式の回答をありがとうございます

教えていただいた公式にセルから値を持ってくること
セルに値を表示するように編集すればよいですね!

VBAの前に数学の再勉強です
学生の時にもっとまじめに算数・数学をやっておくべきでした orz
連立方程式を解くことから再勉強です

お忙しい中誠にありがとうございました

【65481】Re:公式から値XおよびYを算出
お礼  ts200r E-MAIL  - 10/5/25(火) 11:28 -

引用なし
パスワード
   ▼超初心者 さん:

お世話になります
回答をいただきましてありがとうございます

教えていただいた公式をもとにVBAで仕上げていきます

教えていただいた連立方程式の解き方が理解できていません T-T; 滝汗
まずは、連立方程式をもう一度勉強しなおします

誠に有難うございました

【65486】Re:公式から値XおよびYを算出
発言  kanabun  - 10/5/25(火) 21:22 -

引用なし
パスワード
   ▼超初心者 さん:
▼ts200r さん:

>例題では、
>A1=2018.181818・・・・
>となるので、適当に丸める必要あり??

あれ? 答えがちがうぞ、って、よくみたら

> C1 = 2200  '[C1].Value

ではなくて

  C1 = 2220  '[C1].Value

だったんですね。

これなら
  x= 2000    y= 200
ではなくて
  x= 2018.18181818182     y= 201.818181818182
となりますね

失礼しました

【65503】Re:公式から値XおよびYを算出
お礼  ts200r  - 10/5/28(金) 11:03 -

引用なし
パスワード
   ▼kanabun さん:
返事が遅くなりまして大変申し訳ございません

>あれ? 答えがちがうぞ、って、よくみたら

答えは違っていましたが、回答用の式はばっちりでした!

エクセル云々の前に数学のお勉強です(笑

お忙しい中本当にありがとうございました <(_ _)>

2876 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free