質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.40%

Q&A

3回答

245閲覧

エクセルで複数の変数で循環的に答えを出したい場合

pegy

総合スコア245

0グッド

1クリップ

投稿2024/07/24 14:07

編集2024/07/24 14:49

実現したいこと

上手く説明ができるかわからないのですが、頑張ります。
複数の変数があり循環的な計算よってそれぞれが決まる状況がございます。
状況をまとめた表が以下の通りです。手順にはあまり固執していないのですが、例えば以下のケースですと、
Aの結果を得るためにはBが決まる必要がある
Cの結果を得るためにAが決まる必要がある
Dの結果を得るためにCが決まる必要がある
Eの結果を得るためにFが決まる必要がある
Bの結果を得るためにEが決まる必要がある
という状況です。

手順得たい結果変数
1AB
2CA
3DC
4ED
5BE

発生している問題・分からないこと

これらA~Eが収束して然るべき値にたどり着きたいのですが、良いアイデアが思い浮かびません。一般的にエクセルでこれを実現したい場合にはどのようなアプローチがあるのでしょうか?
それとも発想そのものが不適切で考え方を変えるべきなのでしょうか?
よろしくお願い申し上げます。

該当のソースコード

特になし

試したこと・調べたこと

  • teratailやGoogle等で検索した
  • ソースコードを自分なりに変更した
  • 知人に聞いた
  • その他
上記の詳細・結果

Googleで回帰分析といったワードが出てきたりしたのですが、アプローチとしてどう考えればよいのかわからず、おたずねした次第です。

補足

特になし

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

otn

2024/07/24 14:25

お書きの例だと、Fが決まると残り全部決まりますけど、書き間違いですかね?
pegy

2024/07/24 14:49

コメントありがとうございます。失礼しました、ご指摘通りタイポです。 F→Dでした。よろしくお願い申し上げます。
otn

2024/07/24 15:38

本当に循環なら、条件により ・発散 ・振動 ・収束 とかいろいろあると思いますが、収束するなら回答の付いている方法で求まるでしょうね。 AはBより1小さい BはCより1小さい CはAより1小さい だと発散しますね。
sk.exe

2024/07/25 07:56 編集

> 複数の変数があり循環的な計算よってそれぞれが決まる状況がございます。 出来ればその状況の具体例を挙げられることをお奨めします。 > これらA~Eが収束して然るべき値にたどり着きたい 「然るべき値にたどり着く」というのがどのような状態になることを指しているのか(反復計算を行うのであれば、その終了条件)が抽象的であるように思いますが、例えばゴールシークやソルバーといった機能では答えを導き出せないような複雑な計算を行おうとされているのでしょうか。
guest

回答3

0

完全に循環しているのであれば、どこか一つの値を指定すれば他のすべての値が決定するのでそれでよいのでは?

投稿2024/07/25 00:38

yambejp

総合スコア115870

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

Bの初期値を1行目に入れる。
A~Eを求めるための関数を準備して2行目に入れる。
2行目を3行目以降に(5~10行?)コピーする。

fA~fEはそれぞれa~eを求めるための(パラメータが1つある)関数としてマクロ定義する(または数式を直接書く)。
cells(1,2)に<<bの初期値>>を入れる
cells(2,1)に数式"=fA(cells(1,2))"を入れる
cells(2,3)に数式"=fC(cells(2,1))"を入れる
cells(2,4)に数式"=fD(cells(2,3))"を入れる
cells(2,5)に数式"=fE(cells(2,4))"を入れる
cells(2,2)に数式"=fB(cells(2,5))"を入れる
2行目を3行目以降に(5~10行?)コピーする。

値が収束するかどうかは目で追いかけてください

投稿2024/07/25 07:19

sage

総合スコア1240

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

A~Eが収束して然るべき値にたどり着きたい

ということなので、計算結果の変分がある閾値を下回るまで計算したいということかと思います。

以下の記事の中程にある、「反復計算を行う」の設定を有効にしてみてはいかがでしょうか。
https://atmarkit.itmedia.co.jp/ait/articles/2104/22/news019.html

投稿2024/07/24 14:21

TakaiY

総合スコア13337

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.40%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問