This might help you get started:
Sub DrawArrow(r1 As Range, r2 As Range)
    ' shg 2008-0803
    ' Draws a line beween the center of the two ranges
    
    Dim x1 As Double
    Dim x2 As Double
    Dim y1 As Double
    Dim y2 As Double
    
    With r1
        x1 = .Left + .Width / 2
        y1 = .Top + .Height / 2
    End With
    
    With r2
        x2 = .Left + .Width / 2
        y2 = .Top + .Height / 2
    End With
    
    With ActiveSheet.Shapes.AddLine(x1, y1, x2, y2)
        .Fill.Transparency = 0#
        .Line.Weight = 0.75
        .Line.DashStyle = msoLineSolid
        .Line.Style = msoLineSingle
        .Line.Transparency = 0#
        .Line.Visible = msoTrue
        .Line.ForeColor.SchemeColor = 12
        .Line.BackColor.RGB = RGB(255, 255, 255)
        .Line.BeginArrowheadLength = msoArrowheadLengthMedium
        .Line.BeginArrowheadWidth = msoArrowheadWidthMedium
        .Line.BeginArrowheadStyle = msoArrowheadOval
        .Line.EndArrowheadLength = msoArrowheadLengthMedium
        .Line.EndArrowheadWidth = msoArrowheadWidthMedium
        .Line.EndArrowheadStyle = msoArrowheadOval
    End With
End Sub