excel-基于字体和背景颜色将单元格中的值放入
问题描述:
我有一个电子表格 - 在其中一个选项卡上,我有一个填充名称的表格,并且它们与一组参数相关,这些参数是颜色编码的以及它们有不同的背景颜色。 我需要创建一个公式来将基于颜色的那些“X”更改为简单文本(例如,如果单元格具有绿色背景并且黑色“X”,比我想将它称为GB,如果单元格具有黄色背景并且蓝色“X” - YB等)excel-基于字体和背景颜色将单元格中的值放入
任何人都可以,请帮助我这个?
非常感谢。
更新:
我已经在这里发现了很多很好的参考,但我没有做正确的事情。我创建了2名ranges-如:
CellColor=GET.CELL(63,OFFSET(INDIRECT("RC",FALSE),0,-1))
FontColor=GET.CELL(24,OFFSET(INDIRECT("RC",FALSE),0,-1))
我想通了我们对号码的字体和背景颜色。但是当我把它式 - 不给我正确的价值观:
=IF(AND(FontColor=3,I18="X"),"EXR",(IF(AND(FontColor=23,I18="X"),"BU",(IF(AND(FontColor=0,I18="X"),"EPL",0)))))
如果我把在列的公式在它的工作原理,如果在另一个标签 - 它不细胞的左边 - : (
答
在VBA:
Sub SetValueBasedOnColors()
Dim c As Range
For Each c In Range("A2:A10")
If c.Interior.Color = RGB(196, 215, 155) And c.Font.Color = RGB(0, 0, 0) Then
c.Value = "GB"
ElseIf c.Interior.Color = RGB(255, 255, 0) And c.Font.Color = RGB(31, 73, 125) Then
c.Value = "YB"
End If
Next c
End Sub
结果:
你可以对细胞和选择室内色彩通过右键点击:
Format Cells...->More Colors...->Custom (Tab)
如果有很多的颜色一起工作,你可以设置一个“颜色表”保持简单的代码,并避免你不必查看每种颜色。
只需将颜色和X的单元格复制到一个范围内,然后输入您希望它们成为的样子。确保将ColorTable范围更改为表格的正确范围。
Sub SetValueBasedOnColors()
Dim ColorTable As Range
Set ColorTable = Range("D2:D3") 'Point this range to your color table
Dim c As Range
Dim z As Range
For Each c In Range("A2:A10") 'Point this range to your data
For Each z In ColorTable
If c.Interior.Color = z.Interior.Color And c.Font.Color = z.Font.Color Then
c.Value = z.Value
End If
Next z
Next c
End Sub
结果:
您是否尝试过这样做对你自己的?通常,本网站的人员不会为您编写整个程序/脚本 - 当您遇到特定问题时,我们随时为您提供帮助。 – 2014-09-25 15:03:45
我有..我在这里找到很多很好的参考,但我没有做正确的事情。我已经创建了2个名称范围,比如CellColor = GET.CELL(63,OFFSET(INDIRECT(“RC”,FALSE),0,-1))和FontColor = GET.CELL(24,OFFSET(INDIRECT(“RC” ,FALSE),0,-1))。我已经算出了字体和背景颜色的数字。但是当我放置公式 - 它没有给我正确的值:= IF(AND(FontColor = 3,I18 =“X”),“EXR”,(IF(AND(FontColor = 23,I18 =“X”)) “BU”,(IF(AND(FONTCOLOR = 0,I18 = “X”), “EPL”,0)))))。如果我将公式放置在左侧的列中,它将起作用,如果在另一个制表符上,它不会 – Tatiana 2014-09-25 15:16:03
颜色是如何设置的,是条件格式还是普通旧填充? – sous2817 2014-09-25 15:50:30