使用 vb.net 编写 Excel 公式

发布于 2024-11-16 11:51:53 字数 362 浏览 3 评论 0原文

我想编写一个从 B4 列到 M4 列求和的公式,这应该使用 vb.net 编程来完成。

我尝试使用以下内容:

oXLWsheet.Range(4, 14).Formula = "=SUM(oXLWsheet!$B$4:M$4)" 
                                 "=SUM(B4:M4)" 
                                 "=SUM(B4,C4,D4,E4,F4,G4,H4,I4,J4,K4,L4,M4)"

没有什么对我有用。运行代码时出现以下错误:

“来自 HRESULT 的异常:0x800A03EC”。

I want to write a formula to SUM from column B4 to M4, this should be done using vb.net programming.

I tried using the following stuff:

oXLWsheet.Range(4, 14).Formula = "=SUM(oXLWsheet!$B$4:M$4)" 
                                 "=SUM(B4:M4)" 
                                 "=SUM(B4,C4,D4,E4,F4,G4,H4,I4,J4,K4,L4,M4)"

Nothing is working for me. I'm getting the following error when I run the code:

"Exception from HRESULT: 0x800A03EC".

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

匿名。 2024-11-23 11:51:53

尝试引用范围,如果您尝试填充两个不同的行,则必须像这样显示每一行:

oXLWsheet.Range("4:4,14:14").Formula = "=SUM(oXLWsheet!$B$4:M$4)"

这当然会给您一个循环引用。如果您只是想将值放入单元格 N4 中,请使用以下命令:(

oXLWsheet.Range("$N$4").Formula = "=SUM(oXLWsheet!$B$4:M$4)"

美元符号可选)

Try quoting the range, and if you're trying to fill two different rows you have to show each row like so:

oXLWsheet.Range("4:4,14:14").Formula = "=SUM(oXLWsheet!$B$4:M$4)"

This of course gives you a circular reference. If you're just trying to put the values in cell N4, then use this:

oXLWsheet.Range("$N$4").Formula = "=SUM(oXLWsheet!$B$4:M$4)"

(Dollar signs optional)

似狗非友 2024-11-23 11:51:53

您必须使用 Cells 而不是 Range 并使用以下表示法:

oXLWsheet.Cells(4, 14).Formula = "=SUM(oXLWsheet!$B$4:M$4)"

You have to use Cells instead of Range with this notation :

oXLWsheet.Cells(4, 14).Formula = "=SUM(oXLWsheet!$B$4:M$4)"
恍梦境° 2024-11-23 11:51:53

使用后期绑定时,必须拆分语句:

Dim oXLRange as Excel.Range
oXLRange = CType(oXLWsheet.Cells(4, 14), Excel.Range)
oXLRange.Formula = "SUM(Q8:T9)"

使用 .Formula 属性,您必须使用英文版的 Excel 公式。如果您想使用 Excel 公式的本地化版本,请使用 .FormulaLocal

You have to split your statements when you are working with late binding:

Dim oXLRange as Excel.Range
oXLRange = CType(oXLWsheet.Cells(4, 14), Excel.Range)
oXLRange.Formula = "SUM(Q8:T9)"

Using the .Formula property you have to use the english version of the Excel formula. If you want to use the localized version of an Excel formula, use .FormulaLocal

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文