• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 526
  • Last Modified:

Show Last Values in Excel Chart

I would like to show the value of only the last point of all series in a line
 chart in excel.

I can do it manually, (click the point in the graph - data labels - show value).
Is it possible to do it automatically, so when I change the data source, the
chart will still show the value of the last point ?  Also,  I am not very familiar with VBA and attached you will find a sample spreadsheet.

I have used this link below but I was unsuccessful to get it working

http://peltiertech.com/Excel/Charts/LabelLastPoint.html
test.xlsx
0
jlloyd7940
Asked:
jlloyd7940
  • 3
  • 2
2 Solutions
 
FlysterCommented:
See formulas in Weekly Graphs worksheet cells H9:H10. It's reading the value from your data source and not the chart, but the values are the same.

Flyster
test.xlsx
0
 
Curt LindstromCommented:
Try the attached file. It's based on the macros from peltiertech.com

You can see the macros in the modules MenuModule, modChartlabels and ThisWorkbook. These macros were copied from LabelLastPoint.zip in the from peltiertech.com web site

I modified the original macro in modChartlabels to this

 Option Explicit

Sub LastPointLabel()
    Dim mySrs As Series
    Dim nPts As Long
    Dim LastLabeled As Boolean
    If ActiveChart Is Nothing Then
        MsgBox "Please select a chart and try again.", vbExclamation
    Else
        For Each mySrs In ActiveChart.SeriesCollection
            LastLabeled = False
            nPts = mySrs.Points.Count
            For nPts = mySrs.Points.Count To 1 Step -1
                If Not mySrs.Values(nPts) = Empty Then
                    If LastLabeled = False Then
                        With mySrs
                            mySrs.Points(nPts).ApplyDataLabels _
                                    Type:=xlDataLabelsShowValue, _
                                    AutoText:=True, LegendKey:=False
                        End With
                        LastLabeled = True
                    Else
                        mySrs.Points(nPts).HasDataLabel = False
                    End If
                End If
            Next
        Next
    End If
End Sub

Open in new window


Please note that the Quota series in your original file had C3:C15 and C23 which I changed to C3:C15

Cheers,
Curt
Graph-test.xlsm
0
 
Curt LindstromCommented:
This version only has one macro which is the same modifed macro but without the modules MenuModule, modChartlabels and ThisWorkbook.

The macro is stored as a worksheet macro and activated when the Weekly Graphs sheet is opened.

Cheers,
Curt
Graph-test-Ver-2.xlsm
0
The new generation of project management tools

With monday.com’s project management tool, you can see what everyone on your team is working in a single glance. Its intuitive dashboards are customizable, so you can create systems that work for you.

 
jlloyd7940Author Commented:
Hello,

Thank you very much for all the responses and solutions are fantastic.
0
 
FlysterCommented:
Thank you. I realize my solution didn't address specifically what you were looking for (Value from a chart), but it showed that there was a non-VBA approach!
0
 
Curt LindstromCommented:
You're welcome! Let me know if you need anything to be clarified.

Cheers,
Curt
0

Featured Post

Never miss a deadline with monday.com

The revolutionary project management tool is here!   Plan visually with a single glance and make sure your projects get done.

  • 3
  • 2
Tackle projects and never again get stuck behind a technical roadblock.
Join Now