
今回テーマは「Excelの数式を絶対参照に一括変換するVBAマクロ」ということで、数式内の参照セルをいっきに絶対参照に変換するマクロをジッピーと作っていきます!
サンプルお試しフォーマットもご用意してますので、ぜひ一緒に作っていきましょう。
この記事ではマクロ(VBA)を使用します。
マクロ初挑戦の方はこちらの記事からスタートすることをお勧めします。
Excelのマクロ初期設定ガイド

このマクロを思いついたのは、何千ものセルを参照してる数式群があってそれを移動しなきゃならないって時に最初はF4キーで挑んでみたんですが数セルで心折れた時です(笑)
そんな時にひらめいたのがこのマクロ!
そっとリボンに忍ばせておくといつか役に立つかもレベルなコア要素満開なマクロです。
さらに、絶対参照を相対参照に戻す機能も実装してご紹介いたします。

ではでは、お品書きです。
- はじめに:こんな人に使ってほしい!
- マクロ:コード全文紹介
- 便利に使うコツ:リボンに登録しよう
- まとめ:これで作業効率爆上がり!
ジッピー、概要聞いてたかな?
さぁはりきっていこう!!

了解っ!タスク、スタートおっけー!🎙️✨
1.はじめに:こんな人に使ってほしい!

Excelで数式を書くとき、こんな経験ありませんか?
- 数式コピーしたら参照がズレて大惨事
- 一つずつF4キーを押して絶対参照に直してる自分がむなしい
- 数式いっぱいあるのに…全部手動で変換!?

そう、そんな地味にツラい作業を一瞬で終わらせるのが今回ご紹介するマクロ
**「選べる!絶対参照・相対参照変換マクロ」**です!
🔥こんな人に特にオススメ!
- データ分析や帳票で複雑な数式を大量に扱っている方
- コピー先でも参照位置を変えたくない人
- **効率厨(←タスク)**でF4キーの消耗を無くしたい人

さぁ、ここからはマクロの中身を一緒に見ていきましょう!
2. マクロ:コード全文紹介
Sub 参照スタイルを選んで変換()
Dim rng As Range
Dim cell As Range
Dim formulaText As String
Dim answer As VbMsgBoxResult
Dim toAbsolute As XlReferenceType
' 参照スタイルを選択
answer = MsgBox("参照スタイルを選んでください。" & vbCrLf & _
"はい:絶対参照($A$1)" & vbCrLf & _
"いいえ:相対参照(A1)", _
vbYesNoCancel + vbQuestion, "参照スタイル変換")
If answer = vbCancel Then Exit Sub
If answer = vbYes Then
toAbsolute = xlAbsolute
Else
toAbsolute = xlRelative
End If
Set rng = Selection
For Each cell In rng
If cell.HasFormula Then
formulaText = cell.Formula
formulaText = Application.ConvertFormula( _
Formula:=formulaText, _
FromReferenceStyle:=xlA1, _
ToReferenceStyle:=xlA1, _
ToAbsolute:=toAbsolute)
cell.Formula = formulaText
End If
Next cell
End Sub
🔧使い方は超カンタン!
① 数式のあるセルを選択 → ② マクロを実行 → ③「はい(絶対)」「いいえ(相対)」を選択するだけ!

次は「便利に使うコツ:リボン登録」パートやね!

ジッピー、コードありがとう
試してみるね!
簡単な関数を使ってちょっとした表を作ってみました。
右側の表を参照して左の表に計算結果だしています。
表の内容については参照元を絶対参照・相対参照に切り替えるマクロテスト用なので気にしないでくださいね(笑)


それではテストです。
Module1を追加して先ほどのコードを入力しました。
参照セルを絶対参照に変えたい範囲を選択して実行ボタンを押してみます。



メッセージボックスが出てきました。
このまま【はい】を押すと選択範囲が絶対参照に変わります。
【いいえ】を押すと絶対参照だった数式が相対参照に変わります。
【はい】を押してみます。


押して一瞬でしたが数式を確認してみると全ての相対参照の値が絶対参照に変わってます。


続いて、相対参照に戻してみます。
マクロを実行して今度は【いいえ】を押してみます。
またまた一瞬でもとに戻りました!


このマクロを使えば、一括変換で”F4職人”から”時短マスター”に進化できます!
じゃあジッピー、リボンに登録の方法を簡潔に説明おねがいね

ナイス実行レポート、タスク!💪
画像と一緒に流れが超わかりやすいし、ブログ読者にも**「おぉ!動いた!」**って伝わる構成になってる!
3. 便利に使うコツ:リボンに登録しよう

このマクロ、毎回「Alt + F11 → モジュール → 実行」ってやってたら面倒ですよね。
そんなときは Excelリボンに登録しておくと超便利!
🎯登録手順(かんたん3ステップ)
開発タブ
→マクロの表示
→マクロ名「参照スタイルを選んで変換」
を選択オプション
→ ショートカットキーを設定(例:Ctrl+Shift+R)してもOK- さらに便利にするなら、リボンやクイックアクセスツールバーに追加!
※ 詳しくはリボン登録の記事こちら👇
【切り抜き】マクロをリボンに追加しよう!

いつものようにリボンに追加しました。
これでいつでも絶対参照変換マクロが実行できるようになりました!


じゃあ最後ジッピー、まとめにいこう!
4. まとめ:これで作業効率爆上がり!

今回ご紹介したマクロは…
✅ 数式内の参照形式を一括で変換
✅ 絶対参照にも相対参照にも対応
✅ 選択肢付きのスマートUIで、操作もラクラク!

F4キーを連打して指がつりそうだった過去の自分に教えてあげたいレベル🤣
地味だけど、**「こんなん欲しかってん!」**ってなるExcel職人向けの神ツールです。

ジッピーの言うとおり手動でポチポチやってたあの頃におさらばできますね。
ただ・・・使う方は限られてるかなぁ?(笑)
社内のシステム構築などしてる方には重宝してもらえるかな!
それじゃあジッピー、いつもの締めのあいさつお願いね!
🔥 ジッピー締めのあいさつ

というわけで今回は、
**「Excelの数式を絶対参照に一括変換するVBAマクロ」**をご紹介しました!
F4キーを連打していたあの頃には戻れない…
そんな便利すぎる一括変換マクロ、ぜひ皆さんもリボンにこっそり忍ばせておいてくださいね😎✨
ちょっとニッチだけど、ハマると手放せないこの機能。
Excel作業のストレスを1つでも減らして、もっと快適に、もっとスマートに!
それではまた次回、
「ジッピーとタスクのExcel工房」でお会いしましょう〜!
チャオッ!🖐️🐧💻
コメント