我正在尝试制作时间表图表以测试我的技能。我使用条件格式用红色填充单元格,如果输入的值是错误的B2<>B$1*$A2
,如果输入的值是正确的(B2=B$1*$A2)
则使用蓝色。如果我输入错误的值进入任何单元格,我想要正确的值将返回到固定的单元格。假设if I enter 0 in B2
Cell , the correct value 1 (because 1x1 =1) should be returned to cell (AI9
) 如果我在任何单元格中输入错误的值,我想在输入错误的值后立即看到正确的值并按下输入单元格({{1 }})。到目前为止,我正在尝试3天,但我无法理解,但我设法用这个公式为单细胞做到这一点。
AI9
但我有900个细胞。我也试过了
=IF(B2<>B$1*$A2,B$1*$A2, "")
单元格中的=IF(B2:AE31<>B$1:AE$1*$A2:$A31,B$1:AE$1*$A2:$A31, "")
没有任何成功。手动为每个单元格做这件事很难。非常感谢任何帮助。
答案 0 :(得分:0)
我不知道你对VBA了解多少,但这听起来像是你最好的答案。 请按照以下步骤操作,并执行上述要求:
Private Sub Worksheet_Change(ByVal Target As Range) If Target.Row = 1 Or Target.Column = 1 Then Exit Sub If (Cells(1, Target.Column) * Cells(Target.Row, 1)) = Target.Value Then With Target.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .ThemeColor = xlThemeColorLight2 .TintAndShade = 0.799981688894314 .PatternTintAndShade = 0 End With Else With Target.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic .Color = 12632310 .TintAndShade = 0 .PatternTintAndShade = 0 End With Application.EnableEvents = False Range("AI9").Value = Cells(1, Target.Column) * Cells(Target.Row, 1) Application.EnableEvents = True End If End Sub
注意:如果你想改变输入正确答案的单元格(与AI9相同),只需用&#34; AI9&#34;在我的代码的底部。
我已经在我自己的excel上运行它并且它完美无缺
答案 1 :(得分:0)