用常数值更改 excel 公式的一部分
Change part of excel formula with a constant value
我有一个跨列的 excel 公式,其基数每隔 "x" 行更改一次。请注意,此 "x" 不是恒定的,并且会不断变化。例如
=D1/SUM(D:D)
=D2/SUM(D:D)
=D3/SUM(D:D)
=D4/SUM(D:D)
=D5/SUM(D:D)
=D6/SUM(D:D)
=D7/SUM(D:D)
=D8/SUM(D:D)
=D9/SUM(D:D)
我正在尝试更改公式的第一部分而不更改第二部分,反之亦然。例如将分子改变 10 个单元格。
=D11/SUM(D:D)
=D12/SUM(D:D)
=D13/SUM(D:D)
=D14/SUM(D:D)
=D15/SUM(D:D)
=D16/SUM(D:D)
=D17/SUM(D:D)
=D18/SUM(D:D)
=D19/SUM(D:D)
或者,将基数更改为 100。例如
=D1/SUM(D0:D4)
=D2/SUM(D0:D4)
=D3/SUM(D0:D4)
=D4/SUM(D0:D4)
=D5/SUM(D5:D9)
=D6/SUM(D5:D9)
=D7/SUM(D5:D9)
=D8/SUM(D5:D9)
=D9/SUM(D5:D9)
有时,两者都有。关于如何做到这一点的任何指导?
谢谢。
除非我遗漏了什么,否则这个问题的第一部分似乎很简单?
第 1 部分:
由于分母已经是 $x 形式,您可以 select 并复制整个范围的公式并将它们粘贴到 10 行下方,然后将其剪切并粘贴回原位。 COPY 将适当地更新分子,当您将其剪切并粘贴回原位时,它们现在将如您所愿?第二个问题会更具挑战性!
第 2 部分:
没有 VBA 也行 我只能想出一个非常冗长的方法来改变你的恶魔,但我只是检查它是否有效:
换底。
- 搜索并替换 = 为 '=
现在您可以更自由地编辑公式了。
搜索并用 D% 替换 D
搜索并将 D%$ 替换为 D
- 搜索 D% 并将其替换为 D$
- 通过使用数据>文本到列选项摆脱 '=
- 现在使用第 1 部分中的复制和粘贴、剪切粘贴技巧。
然后,如果您仍然需要按原样取回 $s,您基本上会再次重复 1 到 5。
抱歉,这看起来真的很啰嗦,但如果你在开始之前绝望并备份它应该有用。
一个excel公式不能替换另一个单元格excel公式...一种方法是将公式制成文本,然后通过其他公式转换它。转换完成后,您可以将公式粘贴回去。
因此,为了更改 D1
-> D11
,我将构建一个虚拟系列(第 K
列),然后编写一个公式(单元格 L1
)。然后我可以复制公式并将其粘贴到正确的列中。
将“=”替换为特殊字符即可进行公式转换。
(F 列)。
在第一列中,使用的公式是:=RIGHT(F1,LEN(F1)-FIND("/",F1))
为了更改 D
-> D0
,我想我只是通过在 "Formulas".
中搜索来复制和替换它
这种方法对于几百个细胞是可行的。如果列表很长,我会推荐一些 VBA 解决方案,您可以在其中使用 .Range("A1").Formula
获取单元格公式
我有一个跨列的 excel 公式,其基数每隔 "x" 行更改一次。请注意,此 "x" 不是恒定的,并且会不断变化。例如
=D1/SUM(D:D)
=D2/SUM(D:D)
=D3/SUM(D:D)
=D4/SUM(D:D)
=D5/SUM(D:D)
=D6/SUM(D:D)
=D7/SUM(D:D)
=D8/SUM(D:D)
=D9/SUM(D:D)
我正在尝试更改公式的第一部分而不更改第二部分,反之亦然。例如将分子改变 10 个单元格。
=D11/SUM(D:D)
=D12/SUM(D:D)
=D13/SUM(D:D)
=D14/SUM(D:D)
=D15/SUM(D:D)
=D16/SUM(D:D)
=D17/SUM(D:D)
=D18/SUM(D:D)
=D19/SUM(D:D)
或者,将基数更改为 100。例如
=D1/SUM(D0:D4)
=D2/SUM(D0:D4)
=D3/SUM(D0:D4)
=D4/SUM(D0:D4)
=D5/SUM(D5:D9)
=D6/SUM(D5:D9)
=D7/SUM(D5:D9)
=D8/SUM(D5:D9)
=D9/SUM(D5:D9)
有时,两者都有。关于如何做到这一点的任何指导?
谢谢。
除非我遗漏了什么,否则这个问题的第一部分似乎很简单?
第 1 部分:
由于分母已经是 $x 形式,您可以 select 并复制整个范围的公式并将它们粘贴到 10 行下方,然后将其剪切并粘贴回原位。 COPY 将适当地更新分子,当您将其剪切并粘贴回原位时,它们现在将如您所愿?第二个问题会更具挑战性!
第 2 部分:
没有 VBA 也行 我只能想出一个非常冗长的方法来改变你的恶魔,但我只是检查它是否有效: 换底。
- 搜索并替换 = 为 '=
现在您可以更自由地编辑公式了。
搜索并用 D% 替换 D
搜索并将 D%$ 替换为 D
- 搜索 D% 并将其替换为 D$
- 通过使用数据>文本到列选项摆脱 '=
- 现在使用第 1 部分中的复制和粘贴、剪切粘贴技巧。
然后,如果您仍然需要按原样取回 $s,您基本上会再次重复 1 到 5。 抱歉,这看起来真的很啰嗦,但如果你在开始之前绝望并备份它应该有用。
一个excel公式不能替换另一个单元格excel公式...一种方法是将公式制成文本,然后通过其他公式转换它。转换完成后,您可以将公式粘贴回去。
因此,为了更改 D1
-> D11
,我将构建一个虚拟系列(第 K
列),然后编写一个公式(单元格 L1
)。然后我可以复制公式并将其粘贴到正确的列中。
将“=”替换为特殊字符即可进行公式转换。 (F 列)。
在第一列中,使用的公式是:=RIGHT(F1,LEN(F1)-FIND("/",F1))
为了更改 D
-> D0
,我想我只是通过在 "Formulas".
这种方法对于几百个细胞是可行的。如果列表很长,我会推荐一些 VBA 解决方案,您可以在其中使用 .Range("A1").Formula