Excel

【Excel】エクセルで数式を値に変換・固定する方法(数式を残して値を消す・値だけコピー・値に変換するショートカット)

当サイトでは記事内に広告を含みます
いつも記事を読んでいただきありがとうございます!!! これからもお役に立てる各情報を発信していきますので、今後ともよろしくお願いします(^^)/

エクセルで作成した数式を別のシートやファイルに貼り付けたとき、「参照先がないためエラーが出た」「数式が変わってほしくないのに勝手に変わってしまった」という経験をお持ちの方は多いのではないでしょうか。

数式のままデータを扱い続けると、参照元のデータが変わるたびに結果が変動したり、不要な依存関係が残ったりするリスクがあります。

このような場面で役立つのが、数式を値に変換して固定する操作です。

この記事では、エクセルで数式を値に変換・固定する方法(数式を残して値を消す・値だけコピー・値に変換するショートカット)について、基本の貼り付け操作からショートカットキー・VBAを使った一括変換まで、イメージ図を交えながら丁寧に解説していきます。

ぜひ参考にしてみてください。

【結論】エクセルで数式を値に変換するには「コピー後に形式を選択して貼り付け→値」が最も基本的で確実な方法で、ショートカットキーを使うとさらに素早く操作できる

それではまず、エクセルで数式を値に変換・固定する方法の全体像と、目的別に使うべき手段の結論について解説していきます。

数式を値に変換する操作にはいくつかのアプローチがあり、場面に応じて使い分けることが大切です。

数式を値に変換する方法の目的別早見表

数式を値に変換して同じ場所に上書きしたい → コピー(Ctrl+C)→ 同じセルを選択したまま「形式を選択して貼り付け」→「値」を選択して貼り付ける。数式が消えて値だけが残る。

値だけを別のセルや別シートにコピーしたい → コピー(Ctrl+C)→ 貼り付け先で「形式を選択して貼り付け」→「値」を選択する。元の数式は変わらず、値だけが貼り付け先に入る。

ショートカットキーで素早く値貼り付けしたい → Ctrl+C → 貼り付け先を選択 → Alt+E+S+V+Enter(Windows)で一発で値貼り付けが完了する。

大量のセルの数式を一括で値変換したい → VBAマクロを使ってループ処理で一括変換するか、範囲を選択して「コピー→値貼り付け」を一度に行う。

最も汎用的で覚えやすいのは「Ctrl+C → Ctrl+Alt+V(形式を選択して貼り付け)→ V(値)→ Enter」のショートカットの流れです。

以下のイメージ図は、コピー後に「形式を選択して貼り付け」から「値」を選択して数式を値に変換している操作を示しています。

数式を値に変換する必要があるのはどんな場面か

数式を値に変換・固定する操作が必要になる場面は業務の中で頻繁に発生します。

代表的なケースを把握しておくことで、どのタイミングで変換すべきかの判断が素早くできるようになります。

まず最も多いのが、別のファイルやシートにデータを転記する際に参照エラーを防ぎたい場面です。

数式のまま別ファイルに貼り付けると、参照元のブックへのリンクが残ってしまい、ファイルを開くたびに更新確認ダイアログが表示されたり、参照が切れてエラーになったりします。

また、計算結果を「スナップショット」として固定しておきたい場合にも変換が役立ちます。

月次レポートで「先月の数値」を固定したいとき、数式のままでは参照元データが変わると過去の値も変動してしまうためです。

値変換を行う前に確認しておくべきポイント

数式を値に変換する前に確認しておくべきポイントがいくつかあります。

変換は元に戻せない操作であるため(Ctrl+Zで直後なら戻せますが)、慎重に進めることが大切です。

値変換前の確認チェックリスト

① 変換後に元の数式が必要になることがないか確認する(必要であれば別シートに数式を保存しておく)

② 変換前に必ずファイルを保存してバックアップを取っておく

③ 変換対象の範囲が正しいかを確認する(意図しない範囲を変換してしまわないよう注意)

④ 変換後にCtrl+Zで元に戻せることを把握したうえで作業する(ただし保存後は戻せない)

特に大量のデータを一括変換する場合は、事前にファイルのバックアップを取ってから作業することを強く推奨します。

値だけを貼り付けるための「形式を選択して貼り付け」の使い方

続いては、「形式を選択して貼り付け」ダイアログを使って値のみを貼り付ける具体的な操作手順と、各オプションの意味を確認していきます。

この操作はエクセルの中でも特に使用頻度の高い機能のひとつで、使いこなせると作業効率が大きく向上します。

「形式を選択して貼り付け」の操作手順と各オプションの説明

「形式を選択して貼り付け」ダイアログには、値・書式・数式・コメントなど、貼り付ける内容を細かく選択できるオプションが用意されています。

「形式を選択して貼り付け」で値を貼り付ける手順

① 変換したいセル範囲を選択してCtrl+Cでコピーする

② 貼り付け先のセルを選択する(同じセルを選択すると上書き変換できる)

③ 右クリック →「形式を選択して貼り付け」をクリックする

またはCtrl+Alt+Vでダイアログを開く

④「貼り付け」セクションで「値」を選択する

⑤「OK」をクリックして完了する

→ 数式が消えて計算結果の値だけが貼り付けられる

ダイアログの「貼り付け」セクションには複数の選択肢があります。

以下のイメージ図は、「形式を選択して貼り付け」ダイアログの各オプションを示しています。

📗
形式を選択して貼り付け — 各オプションの説明
貼り付け(選択肢から1つ選ぶ)
すべて(書式・数式・値など全部)
数式
値 ← 数式を値に変換するにはここ
書式
コメントとメモ
入力規則
値と数値の書式 ← 書式も同時に保持したい場合
演算
しない
加算
減算
乗算
除算
▲「値」を選択して貼り付けると数式が消えて計算結果の数値だけが残る。書式も残したい場合は「値と数値の書式」を選ぶ。

「値」を選ぶと数式も書式もすべて消えて計算結果の数値のみが貼り付けられます。

セルの書式(通貨・パーセント・日付など)も保持したい場合は「値と数値の書式」を選ぶとよいでしょう。

貼り付けオプション 数式 書式 主な用途
すべて 完全コピー
数式を値に変換する最基本
値と数値の書式 ✓(数値書式のみ) 書式を保ちながら値変換
書式 書式だけを別セルに適用
数式 数式だけを転記する

ホームタブの「貼り付け」ボタンから値貼り付けを選ぶ方法

ダイアログを開かずに、ホームタブの「貼り付け」ボタンのドロップダウンから直接「値貼り付け」を選ぶことも可能です。

コピー後に「ホーム」タブ →「貼り付け」ボタン下の「▼」をクリックすると、値・数式・書式などのアイコンが表示されます。

その中の「値(123と表示されているアイコン)」をクリックするだけで、ダイアログを開かずに値貼り付けが完了します。

マウス操作で素早く値貼り付けしたい場合はホームタブのアイコンが最も手軽な方法でしょう。

右クリックメニューから値貼り付けアイコンを選ぶ方法

貼り付け先のセルを右クリックすると表示されるメニューの中にも、「貼り付けのオプション」として値・書式・数式のアイコンが直接表示されます。

「123」のアイコンにマウスを合わせると「値」と表示されるので、そのままクリックするだけで値貼り付けが完了します。

このアイコンを使う方法はキーボードとマウスを切り替えることなく素早く操作できるのでとても便利です。

数式を値に変換するショートカットキーの使い方

続いては、マウス操作なしでキーボードだけで数式を値に変換できるショートカットキーの使い方を確認していきます。

ショートカットキーを覚えることで、繰り返し作業の効率が大幅に向上します。

Windows版エクセルでの値貼り付けショートカット

Windows版エクセルで数式を値に変換するショートカットは複数あり、状況や好みに応じて使い分けられます。

値貼り付けのショートカットキー(Windows版)

方法① Alt+E+S+V+Enter(旧来のショートカット)

コピー後 → Alt(メニュー)→ E(編集)→ S(形式を選択して貼り付け)→ V(値)→ Enter(OK)

方法② Ctrl+Alt+V → V → Enter(ダイアログを開いてから選択)

コピー後 → Ctrl+Alt+V(形式を選択して貼り付けダイアログを開く)→ V(値を選択)→ Enter(確定)

方法③ Alt+H+V+V(ホームタブ経由)

コピー後 → Alt+H(ホームタブ)→ V(貼り付け)→ V(値)

最も素早いのは方法③のAlt+H+V+Vで、キー4回で完了する

どのショートカットを使うかは好みによりますが、Alt+H+V+Vが最もキー数が少なく素早いため、毎日使う作業であればこのショートカットを覚えておくのがおすすめです。

以下のイメージ図は、Alt+H+V+Vのショートカットを使って値貼り付けを行う流れを示しています。

📗
Microsoft Excel — Alt+H+V+Vショートカットで値貼り付けの流れ
ホーム
挿入
数式
Ctrl
+ C
① コピー
Alt
+ H
② ホームタブ
V
貼り付け▼
③ 貼り付けメニュー
V
④ 値を選択
完了!
数式→値に変換
▲ コピー後にAlt → H → V → Vの順にキーを押すと4回のキー操作だけで値貼り付けが完了する
⚡ Alt+H+V+Vは同時押しではなく順番に1キーずつ押す(Altを押すとキーヒントが表示される)

Mac版エクセルでの値貼り付けショートカット

Mac版エクセルでは、Windowsとはショートカットキーのキーマップが異なります。

Mac版でよく使われる値貼り付けのショートカットは以下の通りです。

値貼り付けのショートカットキー(Mac版)

方法① Command+Control+V(形式を選択して貼り付けダイアログを開く)

→ ダイアログが開いたら「値」を選択してReturnで確定する

方法② Command+Shift+V(バージョンによる)

→ 一部のバージョンで値貼り付けのショートカットとして機能する

Mac版では専用の値貼り付けショートカットが限られるため、ダイアログを開く方法が最も確実

Mac版はバージョンによってショートカットが異なることがあるため、「Command+Control+V」でダイアログを開いてから選択する方法が最も安定した操作です。

数式を残したまま値を消す(数式バーに数式を保持しつつ表示は値にする)

「数式は残したまま、表示される結果(値)は固定したい」という要望は少し特殊ですが、目的によっては対応できる方法があります。

通常の「値変換」は数式そのものを削除して結果だけを残しますが、「数式を別の場所(別列・別シート)に保存しておき、表示用のセルには値だけを貼り付ける」という2段構えのアプローチが一般的です。

数式を保持しながら表示を値固定にする2段構えの方法

① 元の数式が入っているA列は非表示にする(右クリック →「非表示」)

② B列に「=A列を値貼り付け」した固定値を配置する

③ 数式を変更したい場合はA列を再表示してA列を修正 → B列に再度値貼り付けする

または「数式の保存用シート」を別に用意して、印刷・共有用シートには値のみを貼り付ける管理方法も有効

数式と値を分けて管理することで、計算ロジックを保持しつつ表示データを固定するという柔軟な運用が実現できます。

VBAマクロで数式を一括して値に変換する方法

続いては、大量のセルやシート全体の数式を一括で値に変換したい場合に使えるVBAマクロの方法を確認していきます。

手作業では時間がかかる大規模な変換作業も、マクロを使えばワンクリックで完了させることができます。

選択範囲の数式を値に一括変換するVBAコード

最もシンプルなVBAによる数式→値変換は、選択しているセル範囲に対して「Value = Value」と代入する方法です。

選択範囲の数式を値に変換するVBAコード

Sub 数式を値に変換()

With Selection

.Value = .Value

End With

End Sub

使い方

① 値変換したいセル範囲を選択する

② Alt+F11でVBAエディタを開く

③ 挿入 → 標準モジュールを追加して上のコードを貼り付ける

④ F5キーで実行する → 選択範囲の数式がすべて値に変換される

「.Value = .Value」という1行のコードが選択範囲のすべてのセルの数式を一括で値に変換する最もコンパクトな記述方法です。

頻繁に使う操作であれば、このマクロをボタンに割り当てておくとワンクリックで実行できるようになります。

シート全体の数式を値に変換するVBAコード

シート全体(使用しているすべてのセル)の数式を一括で値に変換したい場合は、UsedRangeプロパティを使います。

シート全体の数式を値に変換するVBAコード

Sub シート全体を値に変換()

With ActiveSheet.UsedRange

.Value = .Value

End With

End Sub

特定のシートを指定して変換する場合

Sub 特定シートを値に変換()

With Sheets(“Sheet1”).UsedRange

.Value = .Value

End With

End Sub

注意 実行前にファイルを保存してバックアップを取ること。元に戻せない場合がある。

UsedRangeはシート上でデータが入力されているすべてのセル範囲を対象にするため、複数の列・行にまたがる大量のデータも一度に変換できます。

このマクロを実行する前には必ずファイルを別名で保存しておくことを強くおすすめします。

数式セルだけを選択して値変換するVBAコード

シート内に数式セルと値セルが混在しているとき、「数式が入っているセルだけを値に変換して、もともと値が入っているセルはそのままにする」という選択的な変換もVBAで実現できます。

数式セルのみを値に変換するVBAコード

Sub 数式セルのみ値に変換()

Dim rng As Range

Dim cell As Range

Set rng = ActiveSheet.UsedRange

For Each cell In rng

If cell.HasFormula Then

cell.Value = cell.Value

End If

Next cell

End Sub

→ HasFormulaプロパティでセルに数式が入っているかを判定して、数式セルだけをValue変換する

このコードは「数式セルか値セルかを自動判定して数式のみを変換する」ため、手動入力した値を誤って上書きしてしまうリスクがなく安全に変換できます。

VBAを使った変換操作を定期的に行う業務では、このようなコードをテンプレートとして保存しておくと効率が大きく上がります。

まとめ

この記事では、エクセルで数式を値に変換・固定する方法(数式を残して値を消す・値だけコピー・値に変換するショートカット)について、基本の「形式を選択して貼り付け」からショートカットキー・VBAマクロによる一括変換まで幅広く解説しました。

最も基本的な方法はコピー後に「形式を選択して貼り付け」→「値」を選ぶ操作で、書式も保持したい場合は「値と数値の書式」を選ぶことが重要なポイントです。

ショートカットキーはAlt+H+V+Vが最もキー数が少なく素早く、毎日使う業務であれば真っ先に覚えることをおすすめします。

大量のセルを一括変換したい場合はVBAマクロで「.Value = .Value」を使う方法が最も効率的で、数式セルだけを選択して変換するHasFormulaを使った安全な方法も覚えておくとよいでしょう。

変換作業の前には必ずファイルのバックアップを取り、変換後にCtrl+Zで元に戻せることを確認してから作業を進める習慣をつけることが大切です。

今回の内容を活用して、エクセルでの数式と値の管理をよりスムーズに進めていただけますと幸いです。