ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Total newbie question involving pasting someone else's Macro (https://www.excelbanter.com/excel-programming/315445-total-newbie-question-involving-pasting-someone-elses-macro.html)

Tibbs[_2_]

Total newbie question involving pasting someone else's Macro
 

I want to be able to use this macro:

Function SumByColor(InRange As Range, WhatColorIndex As Integer, _
Optional OfText As Boolean = False) As Double
'
' This function return the SUM of the values of cells in
' InRange with a background color, or if OfText is True a
' font color, equal to WhatColorIndex.
'
Dim Rng As Range
Dim OK As Boolean

Application.Volatile True
For Each Rng In InRange.Cells
If OfText = True Then
OK = (Rng.Font.ColorIndex = WhatColorIndex)
Else
OK = (Rng.Interior.ColorIndex = WhatColorIndex)
End If
If OK And IsNumeric(Rng.Value) Then
SumByColor = SumByColor + Rng.Value
End If
Next Rng

End Function

In my workbooks.

How do I do it, or where do I put it?

As you can probably tell, I have no clue how macros or VB work, jus
thought I'd jump in and ask the question....

Many thanks in advance,

Chri

--
Tibb
-----------------------------------------------------------------------
Tibbs's Profile: http://www.excelforum.com/member.php...fo&userid=1594
View this thread: http://www.excelforum.com/showthread.php?threadid=27427


Chip Pearson

Total newbie question involving pasting someone else's Macro
 
Tibbs,

Use ALT+F11 to open the VBA Editor. In the editor, go to the
Insert menu and choose Module. This will open a code window on
the right side of the main editior window. Paste the code in
that window. Then, you can call the SumByColor function directly
from a worksheet cell with a formula like

=SumByColor(A1,6,False)


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com




"Tibbs" wrote in message
...

I want to be able to use this macro:

Function SumByColor(InRange As Range, WhatColorIndex As
Integer, _
Optional OfText As Boolean = False) As Double
'
' This function return the SUM of the values of cells in
' InRange with a background color, or if OfText is True a
' font color, equal to WhatColorIndex.
'
Dim Rng As Range
Dim OK As Boolean

Application.Volatile True
For Each Rng In InRange.Cells
If OfText = True Then
OK = (Rng.Font.ColorIndex = WhatColorIndex)
Else
OK = (Rng.Interior.ColorIndex = WhatColorIndex)
End If
If OK And IsNumeric(Rng.Value) Then
SumByColor = SumByColor + Rng.Value
End If
Next Rng

End Function

In my workbooks.

How do I do it, or where do I put it?

As you can probably tell, I have no clue how macros or VB work,
just
thought I'd jump in and ask the question....

Many thanks in advance,

Chris


--
Tibbs
------------------------------------------------------------------------
Tibbs's Profile:
http://www.excelforum.com/member.php...o&userid=15947
View this thread:
http://www.excelforum.com/showthread...hreadid=274275




Niek Otten

Total newbie question involving pasting someone else's Macro
 
ToolsMacroVisual Basic Editor (you can see now that you could have keyed
ALT+F11)
InsertModule
Paste the code in the blank code window
ALT+F11 (again; it toggles between your spreadsheet and the macro code)
Now you can type the function call in a cell and see the result.

--

Kind Regards,

Niek Otten

Microsoft MVP - Excel


"Tibbs" wrote in message
...

I want to be able to use this macro:

Function SumByColor(InRange As Range, WhatColorIndex As Integer, _
Optional OfText As Boolean = False) As Double
'
' This function return the SUM of the values of cells in
' InRange with a background color, or if OfText is True a
' font color, equal to WhatColorIndex.
'
Dim Rng As Range
Dim OK As Boolean

Application.Volatile True
For Each Rng In InRange.Cells
If OfText = True Then
OK = (Rng.Font.ColorIndex = WhatColorIndex)
Else
OK = (Rng.Interior.ColorIndex = WhatColorIndex)
End If
If OK And IsNumeric(Rng.Value) Then
SumByColor = SumByColor + Rng.Value
End If
Next Rng

End Function

In my workbooks.

How do I do it, or where do I put it?

As you can probably tell, I have no clue how macros or VB work, just
thought I'd jump in and ask the question....

Many thanks in advance,

Chris


--
Tibbs
------------------------------------------------------------------------
Tibbs's Profile:
http://www.excelforum.com/member.php...o&userid=15947
View this thread: http://www.excelforum.com/showthread...hreadid=274275





All times are GMT +1. The time now is 12:00 PM.

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