Visual Basic
エクセル マクロについて セルをダブルクリックすると値に〇で囲むコードです。 '○で囲む Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean) Dim oS As shape Dim sAdr As String, msg As String With Target If Intersect(Target, Range("I17,I19,I21,I23,I25,I27,K15,K17,K19,K21,K23,K25,K27,I53,I55,I57,I59,I61,I63,K51,K53,K55,K57,K59,K61,K63")) Is Nothing Then Else Cancel = True sAdr = .Cells(1).Address For Each oS In Me.Shapes If (oS.TopLeftCell.Address = sAdr) Then Exit For Next If (oS Is Nothing) Then With Me.Shapes.AddShape(msoShapeOval, .Left, .Top, .Width, .Height) .Fill.Visible = msoFalse .Line.ForeColor.RGB = RGB(0, 0, 0) .OnAction = Me.CodeName & ".Click2Del" .Line.Weight = 1.5 End With Else oS.Delete End If End If End With End Sub '○を消す Private Sub Click2Del() Me.Shapes(Application.Caller).Delete End Sub すると、 'If (oS.TopLeftCell.Address = sAdr) Then Exit For の部分に、「アプリケーション定義またはオブジェクト定義のエラーです」と返ってきます。 なぜでしょうか。ご教授お願いします。