使用公式更新另一个单元格?

时间:2015-12-14 12:27:33

标签: excel

如果A1的值为1,我希望单元格B1递增 否则C1应该递增

 |1                  |2|3|4|
A|=if(A1=1;B1+1;C1+1)| | | |
B|                   | | | |
C|                   | | | |

如果A1 = 1

,我想增加其他单元格

2 个答案:

答案 0 :(得分:1)

为此你必须在B1和C1单元格中编写公式,但是你不能在公式中增加它自己的值,因为它会给出循环引用错误,所以你必须存储B1的原始值和其他列中的C1(您可以隐藏它们)并增加公式中这些列的值。 (但是只有在A1中值变为1时才会增加值。)

答案 1 :(得分:0)

由于公式只能直接修改包含它的单元格的内容,因此即使启用了循环引用,也无法使用电子表格公式。有一个VBA解决方案(大致)做你想要的。将以下代码添加到工作表的代码模块中:

Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Address = "$A$1" Then
        If Target.Value = 1 Then
            Range("B1").Value = Range("B1").Value + 1
        Else
            Range("C1").Value = Range("C1").Value + 1
        End If
    End If
End Sub

A1值更改时,如果更改为1,则B1递增,否则C1递增。