0

对 VBA 非常陌生,因此我试图通过创建税收计算器宏来获得经验,但我不确定为什么这些值没有在正确的单元格中生成,或者这是否是了解税级的最佳方式计算器。

Sub TaxCalculator()
    Dim AGI As Currency
    AGI = Range("AGI").Value
    Select Case AGI
        Case AGI <= Range("'Tax Bracket'!A2").Value
            Range("Net_Income").Value = AGI * (1 - Range("'Tax Bracket'!B2"))
            Range("Monthly_Net_Income").Value = Range("Net_Income") / 12
    End Select
End Sub

有问题的 Excel 文件的链接

4

1 回答 1

4

Select Case 语句可以使用小于或等于(例如<=),但不能以您尝试实现它的方式使用。

Sub TaxCalculator()
    Dim AGI As Currency
    AGI = Range("AGI").Value
    Select Case AGI
        Case Is <= Range("'Tax Bracket'!A2").Value
            Range("Net_Income").Value = AGI * (1 - Range("'Tax Bracket'!B2"))
            Range("Monthly_Net_Income").Value = Range("Net_Income") / 12
    End Select
End Sub

本质上,您Case AGI <= Range("'Tax Bracket'!A2").Value的解决方案可能是 True 或 False 。这可能不太可能与 AGI 中的值相匹配。

于 2015-09-12T23:54:01.423 回答