使用VBA输入单元格公式

问题描述 投票:0回答:2

我在单元格 A1 中有这个简单的公式

=10*Round(B1/10,0)

我知道如何在VBA中输入这个,我简单地写:

Range("A1").Formula = "=10*Round(B1/10,0)"

现在,如果我不知道要舍入其数字的单元格怎么办?换句话说,我的代码中有一个整数变量 N,它可以采用多个值,并且我想对 B 列的第 N 行中的数字进行四舍五入。

这个该怎么写呢? 我试过:

Range("A1").Formula = "=10*Round(B" & N & "  & "/10",0)"

但这行不通。尝试了多种报价布局,但没有成功。

谁可以告诉我:

  1. 如何输入这个简单的公式?更重要的是
  2. 提供一些链接/参考,以帮助我输入其他内容 未来的公式?

谢谢

excel vba quotes formula
2个回答
5
投票

Barry 和 Excelll 已经清楚地解决了您的具体问题。 至于更一般的内容,我用谷歌搜索了一下,很惊讶没有找到关于这方面的好的通用教程。 这是来自 Daily Dose of Excel 的短文

我会打开宏记录器,创建一些公式,看看会得到什么,然后用谷歌搜索具体问题。 最后,一本好书,例如 John Walkenbach 的《VBA 中的强大编程》一书应该会有所帮助。


0
投票

当输入本身包含引号的公式时,您需要将它们加倍,以防止 VBA 将每个新引号读取为自己的字符串。在你的例子中,我相信这应该有效:

Range("A1").Formula = "=10*Round(B"" & N & "" & ""/10"",0)"

© www.soinside.com 2019 - 2024. All rights reserved.