この記事で分かること
- Excelソルバーが「制約条件のもとで目的セルを最大化・最小化する」多変数最適化アドインであること
- 整数設例(予算配分問題)をソルバーの解と手計算の両方で検証する方法
- ゴールシークとの違いと、ソルバーの解が「静的な結果」であり自動更新されない理由
- LBOのデットサイジングなど投資判断でソルバーが使われる具体的な場面
30秒で分かる定義
Excelソルバーとは、複数の制約条件のもとで、目的セルの値を最大化・最小化・特定値に一致させるように、複数の変数セルの組み合わせを探索するExcelのアドイン機能です。ソルバーアドイン、制約付き最適化とも呼ばれます。1変数・制約なしで特定の目標値に合わせるゴールシークの上位互換にあたり、複数の変数と複数の制約条件を同時に扱える点が異なります。既定では無効になっているアドインで、使用前に有効化する操作が必要です。
なぜ実務で重要なのか
PEファンドのLBOストラクチャリングでは、目標レバレッジ倍率・最低手元現金・カバレッジ比率という複数の制約を同時に満たしながら調達額を最大化する、といった多変数の最適化問題が発生します。Debt CapacityとLBOファイナンスの検討や、経営企画の社内投資評価の作法など、単純な感応度分析では答えが出ない「複数の制約を同時に満たす最適解」を求める場面でソルバーが使われます。
計算式(または仕組み)
ソルバーには数式そのものはなく、「ソルバーのパラメーター」画面で次の4要素を設定します。
変更する変数セル:ソルバーが動かしてよいセル(決定変数)
制約条件:変数や関連セルに課す上限・下限・等式
ソルバーの求解方法:GRG非線形/シンプレックスLP/進化的の3種類から選択
目的関数と制約条件がすべて一次式(線形)ならシンプレックスLP法、非線形だが滑らかならGRG非線形法、不連続や条件分岐を含む複雑な問題には進化的(遺伝的アルゴリズム)を選びます。線形計画法の場合、理論上の最適解は制約条件が作る実行可能領域の「頂点」のいずれかに存在するため、手計算での検算がしやすい利点があります。
整数設例で確認する
設例(架空数値)。投資予算100百万円をプロジェクトAとBに配分し、投資額1百万円あたりの期待NPVはAが1.5倍・Bが1.2倍とします。ただしAには「最大60百万円まで」という配分上限(制約)があります。目的はNPV合計の最大化です。
Aの倍率(1.5)がBの倍率(1.2)より高いため、線形計画法ではAを上限まで使い切るのが最適です。A=60百万円(上限)、残り予算B=100−60=40百万円を配分すると、NPV合計=1.5×60+1.2×40=90+48=138百万円となります。比較としてAだけに全額を投じる案(A=100、B=0)はNPV=150百万円ですが制約違反で実行不可、Bだけに全額投じる案(A=0、B=100)はNPV=120百万円で138百万円を下回ります。実行可能な候補点の中で頂点(A=60,B=40)が最大値になることを手計算で確認できます。
投資判断への影響
ソルバーが示す「最適解」は、あくまで入力した目的関数と制約条件の枠内での数学的な最適値であり、その前提が投資判断として妥当かは別問題です。NPV倍率という単一の指標だけで配分を決めてよいか、実行体制やリスク許容度を制約条件として組み込めているかを検討しなければ、数字上の最適解が実務上の最適な判断とは限りません。ソルバーは意思決定の代替ではなく、制約条件を明示的に整理して選択肢を絞り込む道具と位置づけるのが安全です。
財務モデル・Excelでの使い方
- 「変更する変数セル」は他のセルから参照されない独立した入力セルとして色分けし、モデルの前提セルと同じ書式ルールに従わせる
- 目的セルは、モデル本体で計算されたNPVやIRRなどの出力セルをそのまま指定する。変数セルを動かすたびに、通常の数式連鎖を通じて目的セルが再計算される
- ソルバーの実行結果は静的な値である点に注意する。数式のように自動的に再計算されるわけではなく、前提が変わったら毎回再実行する必要がある
- ソルバーアドインは既定で無効のため、「ファイル」→「オプション」→「アドイン」から有効化する
この用語をExcelで「組める」状態にする
複数の制約条件を設定したうえで目的セルを最大化する変数の組み合わせをソルバーで探索し、結果を手計算で検証できるようになる。
実務家が確認するポイントとよくある誤解
誤解1:「ソルバーはゴールシークの上位互換だから常に使えばよい」→ ゴールシークは1変数・制約なしのシンプルな逆算に向き、モデル説明のしやすさで優れています。制約条件が複数あるときにだけソルバーを使うのが適切です。
誤解2:「ソルバーの解は毎回自動更新される」→ 前述のとおり静的な結果です。前提を変えたら再実行を忘れず行い、実行日をコメントに残します。
誤解3:「GRG非線形法だけで常に正しい解に収束する」→ 凸性のない複雑な問題では局所最適解に留まる場合があり、初期値を変えて複数回実行する、進化的アルゴリズムで検証するといった確認が必要です。
確認ポイント:他人が作ったソルバー入りモデルを検証する際は制約条件の一覧を確認し、意図的に外した制約がないか(非負制約の抜け漏れなど)を点検します。
日本実務での扱い
日本企業ではソルバーは製造業の生産計画・物流最適化といったオペレーションズリサーチの文脈で使われることが多く、投資銀行・PEファンドでの利用頻度はゴールシークや感応度分析ほど高くありません。もっとも、LBOファイナンスで目標レバレッジ倍率・最低カバレッジ比率・最低手元現金という複数の財務制限条項(コベナンツ)を同時に満たす調達額を逆算する場面では、単純なゴールシークでは対応できず、ソルバーによる多変数の同時解法が実務上有効です。
面接・モデルテストで問われるポイント
Q:Debt Capacityを決める際、ゴールシークではなくソルバーを使うべき場面はどのような場合ですか?
「レバレッジ比率の上限とカバレッジ比率の下限、最低手元現金という複数の制約条件を同時に満たしながら調達額を最大化したい場合です。ゴールシークは1変数を1つの目標値に合わせるだけで制約を扱えませんが、ソルバーであればすべての条件を制約として設定し、条件を満たす範囲で調達額を最大化する組み合わせを一度に求められます。」
深掘りでは、局所最適解のリスクをどう検証するかが問われます。
よくある質問(FAQ)
Q. ソルバーは既定で使える状態になっていますか?
A. いいえ。インストール直後は無効になっているアドインです。「ファイル」→「オプション」→「アドイン」から「Excelアドインの管理」を選び、「ソルバーアドイン」にチェックを入れて有効化する必要があります。
Q. シンプレックスLP法とGRG非線形法はどう使い分けますか?
A. 目的関数と制約条件がすべて変数の一次式(線形)で表せる場合はシンプレックスLP法を選びます。二乗や比率など非線形の関係を含む場合はGRG非線形法を使い、不連続な条件やIF文を含む複雑な問題には進化的アルゴリズムを検討します。
出典・参考(2026-07-21確認)
- Microsoft サポート(ソルバーアドインの読み込みと使い方、求解方法の選択) https://support.microsoft.com/
- ICAEW「Twenty principles for good spreadsheet practice」(最適化モデルの前提・制約条件の文書化) https://www.icaew.com/
※本記事は教育目的の一般的な解説であり、法務・税務・投資助言ではありません。設例は理解のための架空数値です。