在另一组公式中使用最后一行的值

时间:2018-08-09 14:44:53

标签: vba excel-vba

我目前有3列,(AB,AC和AD)。我需要将AB&AC列与其最后一行相加,因为数据随行数而变化。在AD列中,我需要将每个单元格的数量除以AB1,然后将其除以AB列的总和,然后再将其除以AD列的总和,两者之和都放在每列的最后一行中。 / p>

我已经有了公式,但是,我的问题是运行宏后,在公式栏中,AB和AC的总和都是硬编码的数字。它显示像= AB1 / 200 * 300,我需要显示像这样的单元格引用= AB1 / AB30 * AC30(假设最后一行在row30中),因为如果我需要添加新行,则两列的总和可能会改变在这些单元格之间或之间的数量将发生变化的情况下。

我当前的公式是这样:

$ ls
Makefile
$ cat Makefile 
foo1: bar
    touch foo1

foo2: | bar
    touch foo2

foo3:
    touch foo3
$ make foo1 foo2 foo3
make: *** No rule to make target `bar', needed by `foo1'.  Stop.
$ touch bar
$ make foo1 foo2 foo3
touch foo1
touch foo2
touch foo3
$ make foo1 foo2 foo3
make: `foo1' is up to date.
make: `foo2' is up to date.
make: `foo3' is up to date.
$ touch bar
$ make foo1 foo2 foo3
touch foo1
make: `foo2' is up to date.
make: `foo3' is up to date.
$ make foo1 foo2 foo3
make: `foo1' is up to date.
make: `foo2' is up to date.
make: `foo3' is up to date.

请帮助。谢谢!

关于, 杨

1 个答案:

答案 0 :(得分:0)

返回.Value而不是Address(0,0)

Range("AD2:AD" & LastRow - 1).Formula = "=AB2/" & Range("AB" & LastRow).Address(1,1) & "*" & Range("AC" & LastRow).Address(1,1)

但是也没有理由这样做,因为您可以在以下位置连接最后一行的值:

Range("AD2:AD" & LastRow - 1).Formula = "=AB2/AB$" & LastRow & "*" & "AC$" & LastRow