Total column using last active cell

johndrew

Board Regular
Joined
Apr 21, 2007
Messages
100
I have the following code for totaling a column.

Code:
Dim LR As Long
With Sheets("inventory")
    LR = .Range("e" & Rows.Count).End(xlUp).Row
        .Range("e" & LR + 1).Value = WorksheetFunction.Sum(.Range("e1:e" & LR))
End With


The problem is it finds the previous total and places a new total just below it. What I need is to delete the old total and replace with the new total.
 

Some videos you may like

Excel Facts

Bring active cell back into view
Start at A1 and select to A9999 while writing a formula, you can't see A1 anymore. Press Ctrl+Backspace to bring active cell into view.

Norie

Well-known Member
Joined
Apr 28, 2004
Messages
75,831
Office Version
  1. 365
Platform
  1. Windows
Can you not just remove +1?
 

Misca

Well-known Member
Joined
Aug 12, 2009
Messages
1,606
LR is the row your old total is on but in your code you're using "LR + 1". Edit your "LR="-row by adding "-1" to it and your code should do what you're after.
 

johndrew

Board Regular
Joined
Apr 21, 2007
Messages
100
In E1 thru E5, I have then number (1) in each cell.
When I run the macro, I get 5 in E4
If I run again, I get 9 in E4
This is using the -1
 

Misca

Well-known Member
Joined
Aug 12, 2009
Messages
1,606
Where did you put the -1 to? Here's the code as it should be:
Code:
Dim LR As Long
With Sheets("inventory")
    LR = .Range("e" & Rows.Count).End(xlUp).Row - 1
        .Range("e" & LR + 1).Value = WorksheetFunction.Sum(.Range("e1:e" & LR))
End With
This piece of code replaces the last cell with new sum of everything above it: If you have 1's in E1:E5 this piece of code puts 4 in E5 no matter how many times you run the code.
 

johndrew

Board Regular
Joined
Apr 21, 2007
Messages
100
That removes my last entry in E5.

Here is what I used: Find the last inventory item used row in column (A) the go to column(E) and use that in the sum range and post one cell down.


Dim LR As Long
With Sheets("inventory")
LR = .Range("a" & Rows.Count).End(xlUp).Row
.Range("e" & LR + 1).Value = WorksheetFunction.Sum(.Range("e1:e" & LR))
End With

Thanks for your help
 

Watch MrExcel Video

Forum statistics

Threads
1,108,917
Messages
5,525,621
Members
409,657
Latest member
19JimRon72

This Week's Hot Topics

Top