Here is what I have so far...this works to do what I needed, attach leader lines from data labels to the center of the bubbles, but now I'm wondering if anyone has any ideas on how to have the lines be "beneath" the data labels so they don't go over the text. I tried filling the data labels with white but the lines are still on top of them...is there a way to layer the lines underneath, or force all the data labels on top??

Sub AttachLeaderLines()
'
' Attach Leader Lines Macro
' Andrew McLaughlin

'
Dim i As Integer
Dim j As Integer
Dim xCntPoint As Integer
Dim PointTopDistance As Single
Dim PointLeftDistance As Single
Dim LabelTopDistance As Single
Dim LabelLeftDistance As Single
Dim LabelHeight As Single
Dim LabelWidth As Single
Dim BubbleWidth As Integer
Dim BubbleHeight As Integer
Dim PlotLeftDistance As Single
Dim PlotTopDistance As Single
Dim PlotHeight As Single
Dim PlotWidth As Single
Dim BubbleCenterLeft As Single
Dim BubbleCenterTop As Single
Dim LabelCenterLeft As Single
Dim LabelCenterTop As Single


i = 0

ActiveSheet.ChartObjects("Chart 1").Activate

PlotLeftDistance = ActiveChart.PlotArea.InsideLeft
PlotTopDistance = ActiveChart.PlotArea.InsideTop
PlotHeight = ActiveChart.PlotArea.InsideHeight
PlotWidth = ActiveChart.PlotArea.InsideWidth

xCntPoint = 1
j = ActiveChart.SeriesCollection(1).Points.Count

For i = 1 To j

PointTopDistance = ActiveChart.SeriesCollection(1).Points(xCntPoint).Top
PointLeftDistance = ActiveChart.SeriesCollection(1).Points(xCntPoint).Left
BubbleWidth = ActiveChart.SeriesCollection(1).Points(xCntPoint).Width
BubbleHeight = ActiveChart.SeriesCollection(1).Points(xCntPoint).Height
BubbleCenterLeft = PointLeftDistance + BubbleWidth / 2
BubbleCenterTop = PointTopDistance + BubbleHeight / 2
LabelTopDistance = ActiveChart.SeriesCollection(1).Points(xCntPoint).DataLabel.Top
LabelLeftDistance = ActiveChart.SeriesCollection(1).Points(xCntPoint).DataLabel.Left
LabelHeight = ActiveChart.SeriesCollection(1).Points(xCntPoint).DataLabel.Height
LabelWidth = ActiveChart.SeriesCollection(1).Points(xCntPoint).DataLabel.Width
LabelCenterLeft = LabelLeftDistance + LabelWidth / 2
LabelCenterTop = LabelTopDistance + LabelHeight / 2

ActiveChart.Shapes.AddConnector(msoConnectorStraight, BubbleCenterLeft, _
BubbleCenterTop, LabelCenterLeft, LabelCenterTop).Select

xCntPoint = xCntPoint + 1

Next i



End Sub