ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Help with SUM code (https://www.excelbanter.com/excel-programming/291287-re-help-sum-code.html)

Tom Ogilvy

Help with SUM code
 
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count 1 Then Exit Sub
On Error GoTo ErrHandler
If Target.Column 1 AND Target.Column < 24 Then
Application.EnableEvents = False
If Not IsEmpty(Target) Then
set rng = Cells(Target.Row,2).Resize(1,22)
Cells(Target.Row, 24).Value = Application.Sum(rng)
Else
Cells(Target.Row, Target.Column).ClearContents
End If
End If

ErrHandler:
Application.EnableEvents = True
End Sub

Sum ignores not numeric cells (except cells with errors), so you don't need
to do anything special.

--
Regards,
Tom Ogilvy


"Axeman" wrote in message
...
Hi Guys

Trying to write a macro to add up a bunch of cells on the same row in a

sheet to a "total" cell everytime one cell in the range specified changes.
There are a number of rows that can be modified. Here is the code I am
using..I am getting error messages with the SUM formula..what is the proper
syntax for this??, also how would I add a piece of code to check whether the
cell being modified is a number and not text as some of the rows contain
month names, day names and also dates in dd/mm/yy format down through the
file??. Any help would be greatly appreciated.

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Count 1 Then Exit Sub
On Error GoTo ErrHandler
If Target.Column 1 & Target.Column < 24 Then
Application.EnableEvents = False
If Not IsEmpty(Target) Then
Cells(Target.Row, 24).Value = SUM (Target.Row(2):Target.Row(23))
Else
Cells(Target.Row, Target.Column).ClearContents
End If
End If

ErrHandler:
Application.EnableEvents = True
End Sub




Axeman

Help with SUM code
 
Thanks a million Tom thats done just the trick
Cheers


All times are GMT +1. The time now is 07:28 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com