• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:Excelに関する質問です。)

Excelでの再計算方法についての質問

このQ&Aのポイント
  • Excelを使用してランダムな乱数を生成する際、特定の条件を満たすまで再計算を自動で行いたいと考えています。具体的には、特定のセルに「OK」と表示されるまで再計算を繰り返したいのですが、どのように設定すればよいでしょうか?
  • 自動再計算により、特定のセルが特定の条件を満たすまで繰り返し計算が行われる仕組みを作りたいと考えています。具体的な式はOFFSET(P3,'入力シ-ト'!Q3-1,0)>0.5であり、この式が「OK」となるまで再計算を繰り返すようにしたいです。
  • Excelで再計算を行い、特定のセルが特定の条件を満たすまで自動的に繰り返し計算を行う方法について教えてください。具体的には、特定のセルに「OK」と表示されるまで再計算を繰り返したいのですが、どのように設定すればよいでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

ツールメニューのオプションの計算方法で反復計算のチェックを入れ,適切に回数の上限を定めておいてから式を作成します。 つまりV3には今の数式を入れておき, 乱数の式は,たとえばP3には =IF(V3="OK",P3,乱数の式) のようにしておきます。

hmpm0902
質問者

お礼

さっそくやってみましたら、無事うまくいきました。 早々のお返事かんしゃしております。 ありがとうございます。

その他の回答 (2)

  • yuck7
  • ベストアンサー率0% (0/3)
回答No.3

以下でどうですか? アレンジして使えませんか? 以下モジュールを標準モジュールに貼り付けて A1にRAND関数を設定します。 A1が0.5以上だったらMacro1を以下だったらMacro2 を実行してください。 'セルA1が0.5以上になるまで再計算し続けます '※A1にはRAND関数が設定されています Sub Macro1() Do Until Range("A1").Value >= 0.5 '再計算 Calculate Loop MsgBox "ok" End Sub 'セルA1が0.5より小さくなるまで再計算し続けます '※A1にはRAND関数が設定されています Sub Macro2() Do Until Range("A1").Value < 0.5 '再計算 Calculate Loop MsgBox "ok" End Sub

hmpm0902
質問者

お礼

お教えいただき助かりました。 こんな方法もあるのかと感心した次第です。 理解するには少し難解でしたが、今回そのまま使わせていただきます。 ありがとうございました。

  • te12889
  • ベストアンサー率36% (715/1959)
回答No.2

「ゴールシーク」というコマンドについて、昔、本で読んだことがあります。 使い道がなくてスルーしたきりですが、条件を満たすまで答を探すってな機能だったと思います。 使えるかどうかは未知数ですが、検討する価値はあるかもしれません。

hmpm0902
質問者

お礼

お返事ありがとうございます。 ゴールシークというものを調べてみたところ、使えそうです。 今回は、マクロと一緒に使用しています。 ありがとうございました。

関連するQ&A