Home |
Search |
Today's Posts |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
without knowing what you are trying to achieve:
In a general module: Public v(1 To 65536) As String Public idex As Integer Function FindOldNominal(NomCode, Rng1 As Range) Dim Rng As Range, s As String Dim bFnd As Boolean Set Rng = Application.Caller s = Rng.Address(0, 0, xlA1, True) bFnd = False If idex 0 Then For i = 1 To 65536 If v(i) = s Then bFnd = True Exit For ElseIf IsEmpty(v(i)) Then Exit For End If Next If Not bFnd Then idex = idex + 1 v(idex) = s End If Else idex = idex + 1 v(idex) = s End If FindOldNominal = WorksheetFunction.VLookup(NomCode, Range,5,false) End Function In the worksheet module: Private Sub Worksheet_Calculate() For i = 1 To idex If Len(Trim(v(i))) 0 Then _ Evaluate(v(i)).Interior.ColorIndex = 3 Next End Sub -- Regards, Tom Ogilvy "James Cornthwaite" wrote in message ... o right, never straight forwards is it. Is there any other way around the problem, to achieve the same goal. Thanks James "Chip Pearson" wrote in message ... A function called from a worksheet cell can only return a value to the calling cell. It cannot change the value or format of any cell. -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "James Cornthwaite" wrote in message ... Ideally i would like to color the contents of the cell accessed by the call of my function "findnewnominal(...)" The reason for this is the function is called many times on a range table range and I would like to know at a glance which rows in the table hadn't yet been accessed by a calls of the function. My macro to date (which works fine is) Function FindOldNominal(NomCode, definedRange) FindOldNominal = Worksheetfunction.VLookup(NomCode, definedRange, 5, false) EndFunction but if i want to color the cell accessed I imagine i have to use something like the following? (my attempt of something pseudocode) Function FindOldNominal(NomCode, definedRange) Activecell = reference(Worksheetfunction.VLookup(NomCode, definedRange, 5, false)) Activecell.Interior.ColorIndex = 3 (i.e red etc) FindOldNominal = Worksheetfunction.VLookup(NomCode, definedRange, 5, false) EndFunction I appreciate the above is probably non sensical but know little about excel functions and just wanted to make as clear as possible what i wanted to do. Any help would be greatly appreciated. Thanks James |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Moving cell contents to new cell loses background color in old cel | Excel Discussion (Misc queries) | |||
how to change color of cell based on contents of cell | Excel Discussion (Misc queries) | |||
How can I copy down, the contents of a cell and not color | Excel Discussion (Misc queries) | |||
Transferring contents and color of cell | Excel Worksheet Functions | |||
Change Cell Color dependent on Cell Contents | Excel Programming |