VBA-word中的简单数学计算?

VBA-word中的简单数学计算?,vba,ms-word,Vba,Ms Word,所以我试图做一些不可思议的事情,在word表格中进行一些基本的计算,而不必求助于Excel。这是我为发票生成器做的,我已经做了一段时间了,这几乎是我最后剩下的东西了 问题很简单。。如何将一个单元格中的数字与第二个单元格中的数字相乘,以便在第三个单元格中得到结果?我就是搞不懂,但听起来很简单。理想情况下,它将在从一个单元重新聚焦到另一个单元后执行 有什么想法吗 编辑: 嗯,那真的很容易。我只需要Val函数。代码如下: Dim qty1 As Integer Dim qty2 As Integer

所以我试图做一些不可思议的事情,在word表格中进行一些基本的计算,而不必求助于Excel。这是我为发票生成器做的,我已经做了一段时间了,这几乎是我最后剩下的东西了

问题很简单。。如何将一个单元格中的数字与第二个单元格中的数字相乘,以便在第三个单元格中得到结果?我就是搞不懂,但听起来很简单。理想情况下,它将在从一个单元重新聚焦到另一个单元后执行

有什么想法吗

编辑:

嗯,那真的很容易。我只需要Val函数。代码如下:

Dim qty1 As Integer
Dim qty2 As Integer
Dim qty3 As Integer

Dim price1 As Integer
Dim price2 As Integer
Dim price3 As Integer

qty1 = Val(ActiveDocument.Tables(5).Cell(2, 2).Range.Text)
qty2 = Val(ActiveDocument.Tables(5).Cell(3, 2).Range.Text)
qty3 = Val(ActiveDocument.Tables(5).Cell(4, 2).Range.Text)

price1 = Val(ActiveDocument.Tables(5).Cell(2, 3).Range.Text)
price2 = Val(ActiveDocument.Tables(5).Cell(3, 3).Range.Text)
price3 = Val(ActiveDocument.Tables(5).Cell(4, 3).Range.Text)

ActiveDocument.Tables(5).Cell(2, 4).Range.Text = qty1 * price1
ActiveDocument.Tables(5).Cell(3, 4).Range.Text = qty2 * price2
ActiveDocument.Tables(5).Cell(4, 4).Range.Text = qty3 * price3
使用适当的选择器从文本或表格中的范围中选择值 使用Val函数将文本范围中的数字转换为适当类型的数值 要将数字相乘,请使用乘法运算符* 在另一个单元格或其他字范围中输出结果 根据需要设置格式 单击某个按钮执行宏

Sub multiply_some_cells()

Dim t1, t2 As table
Dim a, b, m As Double

' first table
Set t1 = ActiveDocument.Tables(1)

' last table
Set t2 = ActiveDocument.Tables(ActiveDocument.Tables.Count)

' note: first row starts at 1, first column at 1
' we pick text from 1st row 2nd column and 
' use Val method to convert to appropriate type
a = Val(t1.Cell(1, 2).Range.Text)

' then form some other cell
b = Val(t1.Cell(2, 2).Range.Text)

' note Val stops converting at the first 
' character that cannot be interpreted
' as a numeric digit, numeric modifier, numeric punctuation, 
' or white space.

' To multiply a number use a Multiplication Operator *
m = a * b

t2.Cell(1, 1).Range.Text = "multiplication " & a & " x " & b & " =" & m

End Sub
如果您决定继续您的VBA任务,请阅读本文:


似乎这是一个同样具有挑战性的发票任务:-

Word也是一个电子表格。如果在“帮助”中的表格中键入“执行计算”,您将看到如何执行该操作

Word的电子表格比在格式化工作时插入的Excel表格要好


基本上,公式字段可以引用表格和表格单元格。

我发现了同样的事情:我对VBA还是比较陌生的,所以我不太了解它。我知道用word很难做到,但与此同时,我真的不想用word和Excel来做一些看起来很简单的事情。。如果其他一切都失败了,那将是我最后的选择。你可以把你的编辑作为你自己问题的答案,并接受它,以便将来的搜索者能够找到它。您可以删除有关自动更新的附加问题,然后询问新问题。这并不是真的那么严格,但这个网站是所有关于获得答案。这不是一个讨论论坛。没有闲聊。我的错。我现在就去。