相対参照と絶対参照を変換するマクロ – コピペでVBA(Excel)

こちらの記事はエクセルVBAをあまり知らない方でも利用できる「コピペでVBA(Excel)」としてもご活用できます。詳しくは以下の記事をご確認ください。

「コピペでVBA(Excel)」の概要と使い方
「コピペでVBA(Excel)」の概要と使い方
「コピペでVBA(Excel)」とは? エクセルVBAの知識がない人でもコードをコピペするだけで便利な処理が使えることを目指しています。汎用性のありそうなコードを順次公開
2018-02-12 14:00
はてブ

このマクロの解説

このコードを実行すると、選択したセルにある数式(関数を含む)の参照形式を変換できます。
①のコードは、相対参照(相対パス)から絶対参照(絶対パス)へ。
②のコードは、絶対参照(絶対パス)から相対参照(相対パス)へ。
※R1C1形式ではなくA1形式の前提

このマクロのコード①:相対参照→絶対参照

Private Sub 相対参照→絶対参照に変換()
    With Selection
        .Formula = Application.ConvertFormula(Formula:=.Formula, FromReferenceStyle:=xlA1, ToAbsolute:=xlAbsolute)
    End With
End Sub

※コードをコピーする時は、右上のアイコンをクリックしてください

このマクロのコード②:絶対参照→相対参照

Private Sub 絶対参照→相対参照に変換()
    With Selection
        .Formula = Application.ConvertFormula(Formula:=.Formula, FromReferenceStyle:=xlA1, ToAbsolute:=xlRelative)
    End With
End Sub

※コードをコピーする時は、右上のアイコンをクリックしてください

このマクロを使う理由

関数の参照形式を多数のセルに対して変更する時に役立ちます。ただし、セルの数式の一部のみに適用することはできません。実行時は全ての参照形式が変換されますので、支障がないか確認の上、実行してください。

スポンサーリンク

シェアする

  • このエントリーをはてなブックマークに追加

フォローする