Excel 如何将公式添加到包含值的列

Excel 如何将公式添加到包含值的列,excel,Excel,例如,在A列中,我有一个包含值的500个单元格(A1:A500),我需要将A列与C列相加,而不创建新列,因为我需要在公式中显示原始A列的值 例如: A1=753;B1=-100;C1=200 我需要一个公式,在A1中变成==>A1=+753+B1+C1 我需要通过保持列A的值来显示公式中的计算逻辑 如果不在每个单元格中手动添加公式,我该怎么办 提前感谢您可以使用VBA来实现这些目标 Sub test() Dim cel As Range For Each cel In Range("A1:A"

例如,在A列中,我有一个包含值的500个单元格(A1:A500),我需要将A列与C列相加,而不创建新列,因为我需要在公式中显示原始A列的值

例如:

A1=753;B1=-100;C1=200

我需要一个公式,在A1中变成==>A1=+753+B1+C1

我需要通过保持列A的值来显示公式中的计算逻辑

如果不在每个单元格中手动添加公式,我该怎么办


提前感谢

您可以使用VBA来实现这些目标

Sub test()
Dim cel As Range

For Each cel In Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row)
    cel.Formula = "=" & cel.Value & "+B" & cel.Row & "+C" & cel.Row

Next cel

End Sub
正如评论中所建议的,这里是R1C1符号版本,它更紧凑,运行更快

For Each cel In Range("A1:A" & Cells(Rows.Count, "A").End(xlUp).Row)
    cel.FormulaR1C1 = "=" & cel.Value & "+RC[1]+RC[2]"

Next cel

可能受益于R1C1样式的公式。在性能方面,我认为是清晰的。因此,我认为,更重要的因素是在大范围内的性能,您不希望在每次迭代中为每个单元格的row属性调用两次工作表。不过,使用For循环代替For-Each循环可以避免这种情况。谢谢。我在上面添加了R1C1符号。