Sub RangeString()
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 rg As Excel.Range
Dim endrg As Range
Dim sRange As String
Dim c As Long
Dim r As Long
Dim rs As Long
Dim cs As Long
Dim m As Double
Dim v As Double
Dim i As Long
Dim j As Long
Dim cnt As Long
Set xl = Application
Set wb = xl.ThisWorkbook
Set ws = wb.Sheets(1)
'To speed up running of macro
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
'Do not forget to turn this on again at the end
' Set range of cells
Set rg = ws.Range(ws.Cells(2, 2), ws.Cells(12, 6))
' Return Range as a string
sRange = rg.Address(RowAbsolute:=False, ColumnAbsolute:=False)
'Top left hand corner row and column
r = rg.Row
c = rg.Column
rs = rg.rows.Count
cs = rg.Columns.Count
'Include Worksheet functions in macro
For i = c To c + cs - 1
Set rg2 = ws.Range(Cells(r, i), Cells(rs + r - 1, i))
m = Excel.WorksheetFunction.Average(rg2)
v = Excel.WorksheetFunction.Var(rg2)
cnt = Excel.WorksheetFunction.CountA(rg2)
ws.Cells(14, i).Value = m
ws.Cells(15, i).Value = v
ws.Cells(16, i).Value = cnt
Set rg2 = Nothing
Next i
ws.Cells(14, 1).Value = "Mean"
ws.Cells(15, 1).Value = "Var"
ws.Cells(16, 1).Value = "n"
'To Name a range: rg.Name = "DueDays"
Application.ScreenUpdating = True
Application.Calculation = xlCalculationAutomatic
End Sub