Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vba 启动不同类型的变量,我可以用一个变量遍历它们 “为从APR电子表格获得的单元格值声明变量 尺寸值(0)作为字符串“项目标题” 尺寸值(1)作为“字符串”电路标签 尺寸值(2)为字符串“District” 尺寸值(3)作为字符串“状态” 尺寸值(4)作为“接收日期” 货币“计划资本成本”的价值(5) 货币“实际资本成本”的价值(6) 尺寸值(7)作为“基本工程完成日期” 尺寸值(8)作为货币“计划运行和维护成本” 尺寸值(9)作为货币“实际运行和维护成本” 尺寸值(10)为“O&M工作完成日期” 将值(11)设置为字符串“RWP文件路径”_Vba_Ms Access - Fatal编程技术网

Vba 启动不同类型的变量,我可以用一个变量遍历它们 “为从APR电子表格获得的单元格值声明变量 尺寸值(0)作为字符串“项目标题” 尺寸值(1)作为“字符串”电路标签 尺寸值(2)为字符串“District” 尺寸值(3)作为字符串“状态” 尺寸值(4)作为“接收日期” 货币“计划资本成本”的价值(5) 货币“实际资本成本”的价值(6) 尺寸值(7)作为“基本工程完成日期” 尺寸值(8)作为货币“计划运行和维护成本” 尺寸值(9)作为货币“实际运行和维护成本” 尺寸值(10)为“O&M工作完成日期” 将值(11)设置为字符串“RWP文件路径”

Vba 启动不同类型的变量,我可以用一个变量遍历它们 “为从APR电子表格获得的单元格值声明变量 尺寸值(0)作为字符串“项目标题” 尺寸值(1)作为“字符串”电路标签 尺寸值(2)为字符串“District” 尺寸值(3)作为字符串“状态” 尺寸值(4)作为“接收日期” 货币“计划资本成本”的价值(5) 货币“实际资本成本”的价值(6) 尺寸值(7)作为“基本工程完成日期” 尺寸值(8)作为货币“计划运行和维护成本” 尺寸值(9)作为货币“实际运行和维护成本” 尺寸值(10)为“O&M工作完成日期” 将值(11)设置为字符串“RWP文件路径”,vba,ms-access,Vba,Ms Access,显然,这是行不通的。是否有人知道我可以为不同的变量类型使用相同的变量名,并且可以像上面那样进行迭代(例如orgSheetvalue(迭代变量))?示例 Option Explicit Sub aaa() Dim bbb(10) As Variant bbb(0) = "test 123" ' string Set bbb(1) = Range("a1") ' object bbb(2) = 98765 '

显然,这是行不通的。是否有人知道我可以为不同的变量类型使用相同的变量名,并且可以像上面那样进行迭代(例如orgSheetvalue(迭代变量))?

示例

Option Explicit

Sub aaa()

    Dim bbb(10) As Variant

    bbb(0) = "test 123"          ' string
    Set bbb(1) = Range("a1")     ' object
    bbb(2) = 98765               ' numeric

    Debug.Print bbb(0); vbTab; bbb(1).Interior.Color; vbTab; bbb(2)

End Sub
范例

Option Explicit

Sub aaa()

    Dim bbb(10) As Variant

    bbb(0) = "test 123"          ' string
    Set bbb(1) = Range("a1")     ' object
    bbb(2) = 98765               ' numeric

    Debug.Print bbb(0); vbTab; bbb(1).Interior.Color; vbTab; bbb(2)

End Sub

虽然Variant数组可以正常工作,但它很容易出错,因为您需要记住每个位置所持有的数据类型

在我看来,自定义类型是更好的方法

Public Type MyCustomType
    ProjectTitle As String
    CircuitTag As String
    District As String
    State As String
    DateRecieved As Date
    PlannedCapitalCost As Currency
   '...
End Type


Sub T()
    Dim o As MyCustomType
        o.ProjectTitle = "abc"
        o.CircuitTag = "..."
        o.DateRecieved = Date
End Sub

虽然Variant数组可以正常工作,但它很容易出错,因为您需要记住每个位置所持有的数据类型

在我看来,自定义类型是更好的方法

Public Type MyCustomType
    ProjectTitle As String
    CircuitTag As String
    District As String
    State As String
    DateRecieved As Date
    PlannedCapitalCost As Currency
   '...
End Type


Sub T()
    Dim o As MyCustomType
        o.ProjectTitle = "abc"
        o.CircuitTag = "..."
        o.DateRecieved = Date
End Sub

使用变量数组并使用特定类型初始化每个成员?为什么?可能重复使用变体数组并使用特定类型初始化每个成员?为什么?可能是复制品