Written by Allen Wyatt (last updated December 3, 2022)
This tip applies to Excel 97, 2000, 2002, and 2003
Dennis wants to fill three cells (A1:A3) with RGB values and have another cell (C1) show the color based on those values. He wonders if there is an easy way to do this.
The easiest way to do this is to use a macro that grabs the values in A1:A3 and then modifies the color of cell C1 based on those values. Ideally, the macro should check to make sure that the values in the source cells are in the range of 0 through 255. The following macro works great for this purpose:
Private Sub Worksheet_Change(ByVal Target As Range) If Not Intersect(Target, Range("A1:A3")) Is Nothing Then lRed = Abs(Range("A1").Value) Mod 256 lGreen = Abs(Range("A2").Value) Mod 256 lBlue = Abs(Range("A3").Value) Mod 256 Range("C1").Interior.Color = _ RGB(lRed, lGreen, lBlue) End If End Sub
Note that this macro should be added to the code for the worksheet on which the cells exist. (Just right-click the sheet tab and choose View Code, then add the macro there.) It is an event handler that is automatically run every time there is a change in cell A1, A2, or A3. The values in those cells are ensured to be between 0 and 255 by taking the absolute value of the cell contents and using the remainder (modulo) of dividing it by 256.
Note:
ExcelTips is your source for cost-effective Microsoft Excel training. This tip (9090) applies to Microsoft Excel 97, 2000, 2002, and 2003. You can find a version of this tip for the ribbon interface of Excel (Excel 2007 and later) here: Showing RGB Colors in a Cell.
Create Custom Apps with VBA! Discover how to extend the capabilities of Office 365 applications with VBA programming. Written in clear terms and understandable language, the book includes systematic tutorials and contains both intermediate and advanced content for experienced VB developers. Designed to be comprehensive, the book addresses not just one Office application, but the entire Office suite. Check out Mastering VBA for Microsoft Office 365 today!
Excel keeps track of the actions you take so that you can undo those actions if any are taken in error. You may want to ...
Discover MoreMacros give you a great deal of control over creating, finding, renaming, and deleting files. This tip focuses on this ...
Discover MoreWant to get some input from the users of your workbooks? You can do it by using the InputBox function in a macro.
Discover MoreFREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
There are currently no comments for this tip. (Be the first to leave your comment—just use the simple form above!)
Got a version of Excel that uses the menu interface (Excel 97, Excel 2000, Excel 2002, or Excel 2003)? This site is for you! If you use a later version of Excel, visit our ExcelTips site focusing on the ribbon interface.
FREE SERVICE: Get tips like this every week in ExcelTips, a free productivity newsletter. Enter your address and click "Subscribe."
Copyright © 2025 Sharon Parq Associates, Inc.
Comments