Add a Graph to an Excel workbook

Sub AddGraph()

Dim xl As Excel.Application
Dim wb As Excel.Workbook
Dim ws As Excel.Worksheet
Dim rg1 As Excel.Range
Dim rg2 As Excel.Range
Dim n As Integer
Dim s1 As Excel.Series
Dim s2 As Excel.Series
Dim sc As Excel.SeriesCollection
Dim ch As ChartObject
Dim sXRange As String
Dim sValRange As String

Set xl = Application
Set wb = xl.ThisWorkbook
Set ws = wb.Sheets(1)
Set rg1 = ws.Range(Cells(5, 2), Cells(11, 2))
Set rg2 = ws.Range(Cells(5, 3), Cells(11, 3))
sXRange = rg1.Address(RowAbsolute:=False, ColumnAbsolute:=False)
sValRange = rg2.Address(RowAbsolute:=False, ColumnAbsolute:=False)

Set ch = ws.ChartObjects.Add(50, 210, 300, 250)
ch.Chart.ChartType = xlPie
ch.Chart.SeriesCollection.NewSeries
ch.Chart.SeriesCollection(1).XValues = ws.Range(sXRange)
ch.Chart.SeriesCollection(1).Values = ws.Range(sValRange)
ch.Chart.HasTitle = True
ch.Chart.ChartTitle.Text = "Hours Worked"

End Sub