Excelでダッシュボードやレポートを作成する際、「別シートにある表やグラフを、見栄え良く貼り付けたい。しかも、元のデータが変更されたら、貼り付けた内容も自動で更新されてほしい」という高度なニーズがあります。
これを実現するのが、Excelの強力な機能**「リンクされた図」**です。VBAを使えば、この「リンクされた図」の貼り付けも自動化できます。
この記事では、指定したセル範囲をコピーし、元のデータへのリンクを持つ画像として貼り付けるための、VBAコードを解説します。
完成したVBAコード
以下が、「SourceData」シートのB2:E10の範囲をコピーし、「Dashboard」シートのC3セルに「リンクされた図」として貼り付けるVBAコードです。
Sub PasteRangeAsLinkedPicture()
' 変数を宣言します
Dim sourceRange As Range
Dim pasteCell As Range
'--- 設定 ---
' コピー元のセル範囲
Set sourceRange = ThisWorkbook.Worksheets("SourceData").Range("B2:E10")
' 貼り付け先の起点となるセル
Set pasteCell = ThisWorkbook.Worksheets("Dashboard").Range("C3")
'--- 設定ここまで ---
Application.ScreenUpdating = False
' --- 1. コピー元の範囲を通常通りコピー ---
sourceRange.Copy
' --- 2. 貼り付け先のシートとセルをアクティブにする ---
pasteCell.Parent.Activate
pasteCell.Select
' --- 3.「リンクされた図」として貼り付け ---
' Pictures.PasteメソッドのLink引数をTrueに設定します
ActiveSheet.Pictures.Paste Link:=True
' (任意) 貼り付けた図形の名前などを設定
' With ActiveSheet.Shapes(ActiveSheet.Shapes.Count)
' .Name = "LinkedReportTable"
' End With
Application.ScreenUpdating = True
MsgBox "セル範囲を「リンクされた図」として貼り付けました。"
End Sub
コードのポイント解説
① 通常のコピー .Copy
sourceRange.Copy
処理の始まりは、通常のセル範囲のコピーです。対象となるRangeオブジェクトの.Copyメソッドを実行し、範囲の情報をクリップボードに送ります。
② リンクされた図として貼り付け: .Pictures.Paste(Link:=True)
ActiveSheet.Pictures.Paste Link:=True
ここが、このテクニックの核心部分です。 ActiveSheet.Pictures.Pasteは、クリップボードの中身を図(画像)として貼り付けるメソッドですが、オプションの引数である**LinkをTrueに設定**することで、ただの画像ではなく、コピー元のセル範囲への「リンク」情報を持った特殊な図として貼り付けられます。
「リンクされた図」の動作
このマクロを実行して図を貼り付けた後、コピー元のSourceDataシートに戻って、B2:E10の範囲内のセルの値や書式(色など)を変更してみてください。
その後、Dashboardシートを確認すると、貼り付けた図の見た目が、元のデータの変更に追随して自動的に更新されているのが分かります。
この機能により、データの管理はデータシートで行い、レポートのレイアウトはダッシュボードシートで行う、という役割分担が明確になり、メンテナンス性の高いファイルを作成できます。
まとめ
元のデータを自動的に反映する「リンクされた図」をVBAで作成する手順は、以下の通りです。
- コピー元の
Rangeオブジェクトに対し、通常の**.Copy**メソッドを実行する。 - 貼り付け先のセルを選択する。
ActiveSheet.Pictures.Paste Link:=Trueを実行する。
このLink:=Trueという引数一つで、静的な画像ではなく、動的な「ライブオブジェクト」をシート上に配置できます。見栄えが良く、かつ常に最新の状態が保たれるダッシュボードやレポートの作成に、非常に役立つテクニックです。
副業から独立まで「稼げる」Webスキルを習得する(PR)
ここまで読んでいただきありがとうございます。 最後に宣伝をさせてください。
「副業を始めたいが、何から手をつければいいかわからない」「独学でスキルはついたが、収益化できていない」という悩みを持つ方には、マンツーマン指導のWebスクール**「メイカラ」**が適しています。
このスクールは、単に技術を教えるだけでなく、**「副業として具体的にどう稼ぐか」**という実務直結のノウハウ提供に特化している点が特徴です。
講師陣は、実際に「副業Webライターから1年で独立して月収100万円」を達成したプロや、現役で利益を出し続けているブロガーなど、確かな実績を持つプレイヤーのみで構成されています。そのため、机上の空論ではない、現場で通用する戦術を学ぶことができます。
副業に特化した強み
- 最短ルートの提示: 未経験からでも実績を出せるよう、マンツーマンで指導。
- AI活用の習得: 副業の時間対効果を最大化するための、正しいAI活用スキルも網羅。
- 案件獲得のチャンス: 運営がWebマーケティング会社であるため、実力次第で社内案件の紹介など、仕事に直結する可能性があります。
受講者の多くは、「在宅でできる仕事を探している」「副業を頑張りたい」という20代・30代・40代が中心です。
受講前には、講師による無料説明が行われます。無理な勧誘はなく、自分に合った副業スタイルやプランを相談できるため、まずは話を聞いてみることから始めてみてはいかがでしょうか。
