Sub MyArrowWhereIWant()
Dim MyWS As Worksheet
Dim BeginYLeft As Long, BeginXTop As Long
Dim EndYLeft As Long, EndYTop As Long
With ActiveCell
BeginYLeft = .Left + .Width
BeginXTop = .Top + .Height
End With
With Range('H21')
EndYLeft = .Left + .Width
EndXTop = .Top + .Height
End With
Set MyWS = ActiveSheet
With MyWS.Shapes.AddLine(BeginYLeft, BeginXTop, EndYLeft, EndXTop).Line
.DashStyle = msoLineDashDotDot
.ForeColor.RGB = RGB(50, 0, 128)
.BeginArrowheadLength = msoArrowheadShort
.BeginArrowheadStyle = msoArrowheadOval
.BeginArrowheadWidth = msoArrowheadNarrow
.EndArrowheadLength = msoArrowheadLong
.EndArrowheadStyle = msoArrowheadTriangle
.EndArrowheadWidth = msoArrowheadWide
End With
End Sub