Hi,
since the desired column is not the last
replace
sLet = UCase(Left$(ws.Cells(1, c1).Address(False, False), Len(ws.Cells(1, c1).Address(False, False)) - 1))
ws.Cells(r - 1, 2).Formula = "=SUM(" & sLet & "2:" & sLet & r1 & ")"
with
sLet="G"
XXXXXXXXXXXXX
your question
in vba
MsgBox Cells(1, 1).Address(False, False) >>> returns A1
MsgBox Cells(1, 27).Address(False, False) >>> returns AA1
I need only the letter A or AA
so
UCase(left([A1], length[A1] - one))
or
left([A1], length[A1] - one)
returns to letter A (capital)
symbolic: [A1] is [Cells(1, 1).Address(False, False) ]
LCase (left([A1], length[A1] - one) returns to letter a (small)
xxxxxxxxxxxx
sample vba
MsgBox LCase(Left$(Cells(1, 27).Address(False, False), Len(Cells(1, 27).Address(False, False)) - 1))
returns aa
MsgBox UCase(Left$(Cells(1, 27).Address(False, False), Len(Cells(1, 27).Address(False, False)) - 1))
returns AA
also,
without UCase
MsgBox Left$(Cells(1, 27).Address(False, False), Len(Cells(1, 27).Address(False, False)) - 1)
returns AA
note
try with .....
Cells(1, 1).Address(False, True)
Cells(1, 1).Address(True, False)
Cells(1, 1).Address(True, True)