如何根据其他单元格更改excel单元格的字体颜色

时间:2017-03-22 05:30:57

标签: excel-vba excel-2007 vba excel

我在一个工作簿中有两个工作表。工作表“A”中的一个单元格具有红色字体颜色。我想要另一个单元格是工作表“B”具有相同的字体颜色和内容。但如果“A”中单元格的字体颜色发生变化,则“B”中单元格的颜色应更改为适当的颜色。

例如:表单“A”中的单元格A1为黑色120。在片材“B”中,单元格B1是B1 = A!A1并且它是黑色的。通过将A1字体颜色更改为红色(在“A”表中),工作表“B”中的B1单元格颜色保持黑色,而我想将其颜色更改为红色。

2 个答案:

答案 0 :(得分:0)

按照Use a formula to apply conditional formatting

  

条件格式化快速突出显示的重要信息   电子表格。但有时内置格式规则不会   够远了。将您自己的公式添加到条件格式   规则赋予它一个强大的力量来帮助你做内置规则   做不到。

     

使用公式

创建条件格式设置规则      

例如,假设您跟踪牙科患者的生日   看谁的出现,然后标记他们已经收到了快乐   祝你生日快乐。

     

在此工作表中,我们通过使用条件来查看所需的信息   格式化,由两个包含公式的规则驱动。首先   规则,在A列中,格式化未来的生日,以及C列中的规则   输入“Y”后立即格式化单元格,表示生日   问候已经发出。

     

enter image description here

     

创建第一条规则:

     
      
  1. 选择单元格A2到A7。通过从A2拖动到A7来执行此操作。
  2.   
  3. 然后,点击主页>条件格式>新规则。
  4.   
  5. 在“新建格式规则”对话框中,单击“使用公式”   确定要格式化的单元格。
  6.   
  7. 在此公式为true的格式值下,键入公式:   = A2> TODAY()
  8.   
  9. 该公式使用TODAY函数查看A列中的日期   比今天(未来)更大。如果是这样,细胞就是   格式化。
  10.   
  11. 点击格式化。
  12.   
  13. 在“颜色”框中,选择“红色”。在“字体样式”框中,选择“粗体”。
  14.   
  15. 单击“确定”直到关闭对话框。    格式应用于A列。
  16.         

    创建第二条规则:

         
        
    1. 选择C2到C7的单元格。

    2.   
    3. 重复上面的步骤2到4,并输入以下公式:= C2 =“Y”

    4.         

      公式测试C列中的单元格是否包含“Y”(   Y周围的引号告诉Excel这是文本)。如果是这样的话   格式化单元格。

           
          
      1. 在“颜色”框中,选择“白色”。在“字体样式”框中,选择“粗体”。
      2.   
      3. 单击“填充”选项卡,然后选择“绿色”。
      4.         

        格式化应用于C列。

按照Create a cell reference to another worksheet

  

您可以参考其他工作表中的单元格   工作簿通过预先填写工作表的名称后跟一个   感叹号(!)到单元格引用的开头。在里面   下面的例子,名为AVERAGE的工作表函数计算   名为Marketing in的工作表上B1:B10范围的平均值   同一本工作簿。

     

enter image description here

     

引用同一个工作表中的一系列单元格   工作簿

     
      
  1. 指的是名为Marketing

  2. 的工作表   
  3. 指B1和B10之间的细胞范围,包括

  4.   
  5. 将工作表引用与单元格范围引用分开

  6.   
  7. 单击要输入公式的单元格。

  8.   
  9. 在公式栏按钮图片中,键入=(等号)和您要使用的公式。

  10.   
  11. 单击要引用的工作表的选项卡。

  12.         

    选择要引用的单元格或单元格范围。

答案 1 :(得分:0)

如果您不介意使用VBA,请将此代码添加到“B”表单对象中:

Private Sub Worksheet_SelectionChange(ByVal Target As Range)

    Worksheets("B").Range("B1").Font.Color = Worksheets("A").Range("A1").Font.Color

End Sub