Te dejo el código que puede mejorar tu proceso, te comento que en cuanto a los comentarios lo más que pude lograr fue adicionarlos de manera predeterminada cada vez que se genere un gráfico (puedes modificar la posición y longitud de las flechas de manera independiente) para que los copies, ubiques y edites de acuerdo a la necesidad de cada gráfico (por lo menos te evitas tener que digitar cada vez).
Para que el código funcione debes insertarlo en el código del libro (ThisWorkbook). Quedo pendiente de tu éxito. Saludos
Private Sub Workbook_NewChart(ByVal Ch As Chart)
''Creada por FSerrano en 120313
''para Alexdream en TodoExpertos.com
''Configura un grafico al ser insertado
'Configura el título del gráfico
a = Application.WorksheetFunction.Substitute(Application.WorksheetFunction.Substitute(Ch.SeriesCollection(Ch.SeriesCollection.Count).Formula,"=SERIES(,",""),",1)","")
hoja = Mid(a, 1, InStr(1, a,"!") - 1)
If Ch.HasTitle = False Then
Ch.SetElement (msoElementChartTitleAboveChart)
End If
For Each cell In Sheets("" & hoja & "").Range("a1:b10")
If cell <> "" Then
titulo = titulo & UCase(cell.Value) & " "
End If
Next cell
Ch.ChartTitle.Text = titulo
'Inserta los cuadros de texto que son anotaciones sobre el gráfico
'Acotación PREFLUJOS
ActiveChart.Shapes.AddTextbox(msoTextOrientationHorizontal, 50, 80, 0, 0).Select
Selection.ShapeRange.Line.Visible = msoFalse
texto = Selection.Name
With Selection.ShapeRange.TextFrame2
.TextRange.Characters.Text = "PREFLUJOS"
.MarginLeft = 0
.MarginRight = 1
.MarginTop = 0
.MarginBottom = 0
.TextRange.Font.Bold = msoTrue
.WordWrap = msoFalse
.AutoSize = msoAutoSizeShapeToFitText
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Transparency = 0
.Solid
End With
End With
XPos = 50 + Selection.ShapeRange.TextFrame2.TextRange.BoundWidth / 2
YPos = 80 + Selection.ShapeRange.TextFrame2.TextRange.BoundHeight
ActiveChart.Shapes.AddConnector(msoConnectorStraight, XPos, YPos, XPos, YPos + 30).Select
flecha = Selection.Name
With Selection.ShapeRange.Line
.EndArrowheadStyle = msoArrowheadOpen
.Style = msoLineSingle
.Visible = msoTrue
.Weight = 1.25
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorText1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
End With
ActiveChart.Shapes.Range(Array("" & flecha & "","" & texto & "" )).Select
Selection.ShapeRange.Group.Select
'Acotación LECHADA
ActiveChart.Shapes.AddTextbox(msoTextOrientationHorizontal, 150, 80, 0, 0).Select
Selection.ShapeRange.Line.Visible = msoFalse
texto = Selection.Name
With Selection.ShapeRange.TextFrame2
.TextRange.Characters.Text = "LECHADA"
.MarginLeft = 0
.MarginRight = 1
.MarginTop = 0
.MarginBottom = 0
.TextRange.Font.Bold = msoTrue
.WordWrap = msoFalse
.AutoSize = msoAutoSizeShapeToFitText
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Transparency = 0
.Solid
End With
End With
XPos = 150 + Selection.ShapeRange.TextFrame2.TextRange.BoundWidth / 2
YPos = 80 + Selection.ShapeRange.TextFrame2.TextRange.BoundHeight
ActiveChart.Shapes.AddConnector(msoConnectorStraight, XPos, YPos, XPos, YPos + 30).Select
flecha = Selection.Name
With Selection.ShapeRange.Line
.EndArrowheadStyle = msoArrowheadOpen
.Style = msoLineSingle
.Visible = msoTrue
.Weight = 1.25
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorText1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
End With
ActiveChart.Shapes.Range(Array("" & flecha & "","" & texto & "")).Select
Selection.ShapeRange.Group.Select
'Acotación DESPLAZAMIENTOS
ActiveChart.Shapes.AddTextbox(msoTextOrientationHorizontal, 250, 80, 0, 0).Select
Selection.ShapeRange.Line.Visible = msoFalse
texto = Selection.Name
With Selection.ShapeRange.TextFrame2
.TextRange.Characters.Text = "DESPLAZAMIENTOS"
.MarginLeft = 0
.MarginRight = 1
.MarginTop = 0
.MarginBottom = 0
.TextRange.Font.Bold = msoTrue
.WordWrap = msoFalse
.AutoSize = msoAutoSizeShapeToFitText
With Selection.ShapeRange.Fill
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorBackground1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
.Transparency = 0
.Solid
End With
End With
XPos = 250 + Selection.ShapeRange.TextFrame2.TextRange.BoundWidth / 2
YPos = 80 + Selection.ShapeRange.TextFrame2.TextRange.BoundHeight
ActiveChart.Shapes.AddConnector(msoConnectorStraight, XPos, YPos, XPos, YPos + 30).Select
flecha = Selection.Name
With Selection.ShapeRange.Line
.EndArrowheadStyle = msoArrowheadOpen
.Style = msoLineSingle
.Visible = msoTrue
.Weight = 1.25
.Visible = msoTrue
.ForeColor.ObjectThemeColor = msoThemeColorText1
.ForeColor.TintAndShade = 0
.ForeColor.Brightness = 0
End With
ActiveChart.Shapes.Range(Array("" & flecha & "","" & texto & "")).Select
Selection.ShapeRange.Group.Select
End Sub
NO OLVIDES FINALIZAR Y PUNTUAR LA PREGUNTA