例えば,
Excelに貼り付けた画像の部分をクリックすると
特定のセルに移動させたい場合,
画像上に図形を配置して
図形にハイパーリンクを付けることで実現できます。
このようにすると画像の部分と
セルを関連付けることができます。
図形の数が数個であれば
手動で図形を作成することも簡単ですが
数十個となれば作成するのは手間です。
VBAであれば一瞬でできます。
VBAで
セルに移動するリンクを貼った図形を
作成する方法を見ていきます。
1~47のナンバーが入力されている
次の画像のシートがあるとします。

A列の各セルの内容を文字として表示して
セルに移動するリンクを追加した図形を作成します。
図形の種類は円です。
作成した図形を日本地図の画像上に配置して
地図からセルへ移動できるようにします。
セルに移動するリンクを付けた図形を作成するコード:
|
Sub macro20200514a() 'セルに移動するリンクを付けた図形を作成する
Dim i As Integer For i = 1 To Cells(1, 1).End(xlDown).Row ActiveSheet.Shapes.AddShape(msoShapeOval, _ 200 + 14 * (i Mod 10), 10 + 14 * Int(i / 10), _ 14, 14).Select 'テキストの設定 Selection.ShapeRange(1).TextFrame2.TextRange. _ Characters.Text = Cells(i, 1) '図形の塗りの設定 With Selection.ShapeRange.Fill .Visible = msoTrue .ForeColor.RGB = RGB(255, 255, 255) .Solid End With '図形の線の設定 With Selection.ShapeRange.Line .Visible = msoTrue .Weight = 0.75 .ForeColor.RGB = RGB(0, 0, 0) End With '文字の塗りの設定 With Selection.ShapeRange.TextFrame2.TextRange.Font.Fill .Visible = msoTrue .Solid .ForeColor.RGB = RGB(0, 0, 0) End With '余白,文字揃えの設定 With Selection.ShapeRange.TextFrame2 .MarginLeft = 0 .MarginRight = 0 .MarginTop = 0 .MarginBottom = 0 .VerticalAnchor = msoAnchorMiddle .HorizontalAnchor = msoAnchorCenter .WordWrap = msoFalse End With 'フォントの設定 With Selection.ShapeRange.TextFrame2.TextRange.Font .Name = "MS Pゴシック" End With 'リンクの追加 ActiveSheet.Hyperlinks.Add _ Anchor:=Selection.ShapeRange.Item(1), _ Address:="", _ SubAddress:=ActiveSheet.Name & "!" & Cells(i, 1).Address Next i
End Sub
|
実行結果:

リンクを貼り付けた図形が作成されたので
これを日本地図上に配置します。
リンクを貼った図形は選択しようとすると
リンク先へ移動してしまうので
[ホーム]-[検索と選択]-[オブジェクトの選択]をクリックして
オブジェクトのみ選択できるようにしてから
図形を移動させます。
図形を日本地図上に配置すると次のようになります。

数字をクリックするとセルに移動します。
使用Ver:Win10, Excel For Office365
コメント