07版EXCEL单元格怎么设置改变其中的数据内容单元格就会自动变化单元格背景颜色

2024-11-21 19:59:14
推荐回答(5个)
回答1:

一、问题的解决办法

  关于这个问题,只能使用VBA来做,下面,一个非常实用的也很简单的通用的方法。

二、实例制作

1.假如,工作薄中存在这样的一个工作表

2.在这个工作薄的任何一个工作表,只要对方修改了哪个单元格的值,其值与原来的不一样,那么,对应单元格的背景颜色就会变成红色的。

3.以下是制作的过程,请您认真仔细的看了,否则会功亏一篑。

4.在工作表激活的状态下,按下“Alt+F11”组合键,弹出Microsoft Visual Basic窗口,如下图!

5.然后,如上图一样,找到ThisWorkbook点击右键,选择“查看代码”,之后,会弹出如下图的代码编写窗口。

6.上图中,请先选择好“通用”对象名,之后,直接输入上述被选中的代码。

  最后,紧跟着直接输入如下的代码,以完成上述的所有代码的输入:

  Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range)
  MyRow = Target.Row
  MyColumn = Target.Column
  MyNewValue = Cells(MyRow, MyColumn).Value
  If (MyNewValue <> MyOldValue) Then
  Cells(MyRow, MyColumn).Interior.ColorIndex = 3
  End If
  End Sub

  Private Sub Workbook_SheetSelectionChange(ByVal Sh As Object, ByVal Target As Range)
  MyRow = Target.Row
  MyColumn = Target.Column
  MyOldValue = Cells(MyRow, MyColumn).Value
  End Sub

  代码输入完成之后,请在Microsoft Visual Basic窗口中进行保存操作,现在,整个代码输入过程就完成了,并且,可以直接使用了。

7.返回到Excel窗口,现在,就来验证一下您的代码吧!

  比如,试图将“大众三七网”改成“文山三七”;试图将“2009-8-1”改成“2119-8-1”,那么,这两个单元格的值与原来的就不一样了,因此,它们的背景颜色自然就会自动变成红色的了。

回答2:

用VBA单元格事件处理,修改过的单元格自动变红色字体

Private Sub Worksheet_Change(ByVal Target As Range)
    Target.Font.ColorIndex = 3
End Sub

回答3:

条件格式不能跨表引用,但可以变通一下:
1、以算好的Sheet1为基础
2、复制Sheet1到sheet2、3,作为第二、三栋数据
3、复制Sheet1的数据区,使用“选择性粘贴”-“粘贴链接”,至Sheet2、3的空白处备用(可以隐藏)
4、然后就可以在Sheet2、3里使用条件格式了

回答4:

以下附件是用批注来记录修改的,每一次的修改都会记录下来


回答5:

使用条件格式