Home |
Search |
Today's Posts |
#1
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Hi,
I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub |
#2
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
You don't want code, you want conditional formatting. See Excel Help.
Nick Thorsch wrote: Hi, I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub |
#3
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Nick,
Here's some code I came up with. There are more ways to do thi though. Charles Sub colur_cells() Application.ScreenUpdating = False Dim rng As Range Dim i As Long Set rng = Worksheets("sheet1").Cells(1, 11).CurrentRegion For i = 1 To rng.Rows.Count If rng(i, 1).Value rng(i, 2).Value Then With rng(i, 1).Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With rng(i, 1).Interior .ColorIndex = 3 .Pattern = xlSolid End With End If Next End Su -- Message posted from http://www.ExcelForum.com |
#4
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Try below. I based it on the following assuptions:
List starts from [A1] and [B1] as headings Column A is continous (required field) Column A is your goal (target); Column B is your Actual '-------------------------------------------------------- Sub ColourCoding() Dim Pivot As Range Dim iRow As Integer Dim Colour As Integer 'Set pivot as the heading of the list Set Pivot = ThisWorkbook.Sheets("Sheet1").[A1] iRow = 1 'Run through each row on list Do While IsEmpty(Pivot.Offset(iRow, 0)) = False 'Column 1 = Target; Column 2 = Actual 'Set Colour = 4 if TargetActual If Pivot.Offset(iRow, 0) Pivot.Offset(iRow, 1) Then Colour = 4 'Set Colour = 3 if Target<Actual ElseIf Pivot.Offset(iRow, 0) < Pivot.Offset(iRow, 1) Then Colour = 3 'Set Colour = Nothing if Target = Actual Else Colour = xlNone End If 'Perform formatting Pivot.Offset(iRow, 1).Interior.ColorIndex = Colour 'Next row iRow = iRow + 1 Loop End Sub "Nick Thorsch" wrote: Hi, I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub |
#5
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
YOU WERE RIGHT!! YOU ROCK JWOLF! THANKS:)
-----Original Message----- You don't want code, you want conditional formatting. See Excel Help. Nick Thorsch wrote: Hi, I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub . |
#6
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
ANSON YOU ROCK TOO! Works Beautifully. This newsgroup is
great! -----Original Message----- Try below. I based it on the following assuptions: List starts from [A1] and [B1] as headings Column A is continous (required field) Column A is your goal (target); Column B is your Actual '-------------------------------------------------------- Sub ColourCoding() Dim Pivot As Range Dim iRow As Integer Dim Colour As Integer 'Set pivot as the heading of the list Set Pivot = ThisWorkbook.Sheets("Sheet1").[A1] iRow = 1 'Run through each row on list Do While IsEmpty(Pivot.Offset(iRow, 0)) = False 'Column 1 = Target; Column 2 = Actual 'Set Colour = 4 if TargetActual If Pivot.Offset(iRow, 0) Pivot.Offset(iRow, 1) Then Colour = 4 'Set Colour = 3 if Target<Actual ElseIf Pivot.Offset(iRow, 0) < Pivot.Offset(iRow, 1) Then Colour = 3 'Set Colour = Nothing if Target = Actual Else Colour = xlNone End If 'Perform formatting Pivot.Offset(iRow, 1).Interior.ColorIndex = Colour 'Next row iRow = iRow + 1 Loop End Sub "Nick Thorsch" wrote: Hi, I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub . |
#7
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Didn't quite work, Anson's did though so thanks for
trying :) -----Original Message----- Nick, Here's some code I came up with. There are more ways to do this though. Charles Sub colur_cells() Application.ScreenUpdating = False Dim rng As Range Dim i As Long Set rng = Worksheets("sheet1").Cells(1, 11).CurrentRegion For i = 1 To rng.Rows.Count If rng(i, 1).Value rng(i, 2).Value Then With rng(i, 1).Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With rng(i, 1).Interior .ColorIndex = 3 .Pattern = xlSolid End With End If Next End Sub --- Message posted from http://www.ExcelForum.com/ . |
#8
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Sub Macro1()
For i = 3 To 100 With Cellls(i,"K") If .Value < .Offset(0,1).Value Then With .Interior .ColorIndex = 3 .Pattern = xlSolid End With Else With .Interior .ColorIndex = 4 .Pattern = xlSolid End With End If Next i End Sub but you should be using conditional formatting. -- HTH Bob Phillips ... looking out across Poole Harbour to the Purbecks (remove nothere from the email address if mailing direct) "Nick Thorsch" wrote in message ... Hi, I want visual basic code that will compare the first cell's value, the goal, to the second cell's value, the actual value. If the actual is greater than the goal, the actual cell is filled in green. If the actual is less than the goal, the actual cell is filled in red. The process repeats down the two columns, comparing varying actuals to goals and filling with green or red to create a clearer managerial dashboard. The code I have created so far might help get you started. Please post the correct code. I have spent hours on this in frustration. If you can solve this, please email it to me and THANK YOU VERY MUCH!! Sub Macro1() ' ' Macro1 Macro ' Macro recorded 6/14/2004 by Nick Thorsch ' ' If "K3" "L3" Then With Selection.Interior .ColorIndex = 4 .Pattern = xlSolid End With Else With Selection.Interior .ColorIndex = 3 .Pattern = xlSolid End With End If End Sub |
#9
![]()
Posted to microsoft.public.excel.programming
|
|||
|
|||
![]()
Nick,
Re tested my version. It's based on the values being in column "K" an "L" Charle -- Message posted from http://www.ExcelForum.com |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
![]() |
||||
Thread | Forum | |||
Macro Fill Cells With Formula; Conditional To Seperate Column | Excel Discussion (Misc queries) | |||
Conditional color fill | Excel Discussion (Misc queries) | |||
Conditional or Indirect fill up | Excel Discussion (Misc queries) | |||
Conditional fill | Excel Discussion (Misc queries) | |||
Conditional Auto fill | Excel Discussion (Misc queries) |