5

私は VBA にかなり慣れていないので、テーブルの 2 列ごとに矢印を追加しようとしています。エラーが表示されます: method 'range' of object '_global' failed

それを修正するにはどうすればよいですか。

Sub loop1()
    'Loop round range P6:AA10
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer


    For i = 9 To 14
        For j = 6 To 10
            k = (i * 2) - 1
            ActiveSheet.Shapes.AddShape(msoShapeRightArrow, Range(Cells(j, k)).Left + 2, _
                Range(Cells(j, k)).Top + 3, 15, 10).Select
        Next j
    Next i
End Sub
4

1 に答える 1

1

Drop the Range(), looks like .Left and .Top are properties of Cells not Range objects. This code runs for me on Excel 2010:

Sub loop1()
    'Loop round range P6:AA10
    Dim i As Integer
    Dim j As Integer
    Dim k As Integer


    For i = 9 To 14
        For j = 6 To 10
            k = (i * 2) - 1
            ActiveSheet.Shapes.AddShape(msoShapeRightArrow, Cells(j, k).Left + 2, _
                Cells(j, k).Top + 3, 15, 10).Select
        Next j
    Next i
End Sub
于 2012-11-14T13:12:41.167 に答える