excel - 变量名称不匹配但仍然有效

标签 excel vba

我正在查看我工作中的某人创建的文件,它包含以下内容:

Sub Inputs(zDOB As Date, zRetAge As Double, zRetDate As Date, zDOJ As Date, zEmployer As Double, zEmployee As Double, _
           zSalary() As Double, zInflation As Double, zFund As Double, zAVCRate As Double, zEvalDate As Date, zAVCFund As Double, _
           zCharge As Double, zFund2 As Double, zAVCFund2 As Double)

    zDOB = Range("B1")
    zRetAge = Range("B7")
    zRetDate = Range("B8")
    zDOJ = Range("B11")
    zEmployer = Range("B15")
    zEmployee = Range("B16")
    zSalary(0) = Range("B14")
    zInflation = Range("B19")
    zFund = Range("B20")
    zFund2 = Range("B20")
    zAVCRate = Range("B24")
    zAVCFund = Range("B27")
    zAVCFund2 = Range("B27")
    zEvalDate = Range("B6")
    zCharge = Range("J7")

End Sub

很公平,这是设置稍后使用的输入。

我的问题是当再次调用此子程序时:

Call Module3.Inputs(xDOfB, xRetirementAge, xDateRetire, xDOJ, xEmployer, xEmployee, xSalary, _
                         xInflation, xFund, xAVC, xEvalDate, xAVCFund, xCharge, xFund2, xAVCFund2)

z 现在是 x,这有什么区别吗?这是如何工作的?

最佳答案

如果您要跨下标使用公共(public)变量,您可能需要使用它们。

Public zDOB As Variant
Public zRetAte As Variant
Sub textSub()
    Call Inputs
End Sub
Sub Inputs()
    zDOB = Range("B1")
    zRetAge = Range("B7")
End Sub

关于excel - 变量名称不匹配但仍然有效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55028133/

相关文章:

excel - 如何在使用 Apache POI 打开 Excel 时修复错误。错误说 "We found a problem with some content in xyz.xlsm. Do you want..."?

sharepoint - 使用 XMLHTTP 删除 Sharepoint 文件

vba - 将自定义日历设置为将星期一作为一周的第一天

excel - 找到特定单词后找到句子的其余部分

VBA如何使用字典

Excel 2007 VBA - 运行时错误 1004

excel - VBA 如何如果不是并转到下一页

vba - 在Excel vba中更改注释大小相对于填充图片的原始大小

excel - 如何在 Excel 中使用 VBA 遍历所有列

excel - 将工作表保存为 CSV,且 Excel 公式完好无损