微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 Word 中的 VBA 中进行数学运算?

如何解决如何在 Word 中的 VBA 中进行数学运算?

随着 2020 年纳税季节的临近,我正在尝试在 Word 中创建一个简单的宏,该宏将接受一些用户输入并填充与刺激检查相关的电子邮件模板,以发送给我的客户。实际的宏只是打开一个信息框,其中包含三个用户输入的空格。在该框内,有一个“确定”按钮和一个“取消”按钮。取消按钮只是隐藏框,确定按钮执行以下操作:

Private Sub CommandButton1_Click()
    Dim taxpayerName As Range
    Set taxpayerName = ActiveDocument.Bookmarks("tpName").Range
    taxpayerName.Text = Me.TextBox1.Value
    
    Dim numberOfDep As Range
    Set numberOfDep = ActiveDocument.Bookmarks("numDep").Range
    numberOfDep.Text = Me.TextBox3.Value
    
    Dim numberOfDep1 As Integer
    numberOfDep1 = Me.TextBox3.Value
    
    Dim maritalStatus As Range
    Set maritalStatus = ActiveDocument.Bookmarks("mStatus").Range
    maritalStatus.Text = Me.TextBox2.Value
    
    Dim maritalStatus1 As Range
    Set maritalStatus1 = ActiveDocument.Bookmarks("mStatus1").Range
    maritalStatus1.Text = Me.TextBox2.Value
    
    Dim maritalStatus2 As Range
    Set maritalStatus2 = ActiveDocument.Bookmarks("mStatus2").Range
    maritalStatus2.Text = Me.TextBox2.Value
    
    Me.Repaint
    tpInfo.Hide
    
    Dim amount1 As Integer
        If maritalStatus = "single" Then
        amount1 = 1200
        Else
        amount1 = 2400
        End If
    amount1 = ActiveDocument.Bookmarks("a1").Range
End Sub

我正在尝试检查我的 maritalStatus 变量是否为“single”,并为第一轮刺激付款分配 amount1 1200 或 2400 的值。然后我想将该值插入到我创建的书签 a1 处的 Word 文档中。但是,我目前在代码的最后一行收到运行时错误 13。

我的最终目标是取 amount1 并将其添加一个新变量 (depAmount1) 中,该变量将 500 美元乘以应存储在 numberOfDep1 中的受抚养人数量。因此,一个有 1 个孩子的纳税人总共需要 1,700 美元。然后,我会为第二轮刺激付款重复代码并稍作调整,最后将这两个总数加在一起作为总计。

提前致谢,任何帮助将不胜感激。

1

解决方法

如果您的问题的核心是最后一行代码中的错误,我认为您可能会因为您试图将书签中的字符串分配给 amount1 变量,该变量被指定为整数,我认为你想做相反的事情,将值放入文档中。反转您的代码行应该可以解决问题。

ActiveDocument.Bookmarks("a1").Range = amount1 

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。