をいただければ幸いです。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim strShapeName As String 'Variable to hold the shape name
Dim shp As Shape 'Variable to hold a shape object
'Detect if the click was in range A:C
If Not Intersect(Target, Range("A:C")) Is Nothing Then
'Boom... set all the shapes to blue
For Each shp In Me.Shapes
If Left(shp.Name, 2) = "S_" Then shp.Fill.ForeColor.RGB = RGB(0, 0, 255)
Next shp
'Grab the shape name from Column A
strShapeName = Cells(Target.Row, 1).Value
'Set the color of the shape to red
Shapes(strShapeName).Fill.ForeColor.RGB = RGB(255, 0, 0)
End If
End Sub
選択変更がした場合、これは検出されます列A、B、またはCのセル。列Aから図形の名前を取得し、その図形の色を赤に設定します。
以前に選択したシェイプを元の色に戻すことはありません。 – OldUgly
@JNevillあなたがコメントでタグ付けしていないので、あなたがOldUglyのコメントを見たかどうかは分かりませんが、別の選択が行われると元の色に戻るコードは提供されませんでした。 –
それは私がそれを残しているようです。モバイルで書くのが難しい – JNevill