首页 > 解决方案 > 无效访问列表框的使用无效

问题描述

我正在尝试计算从多选列表框的列中选择的值的总和,并将其放入表单的文本框中。我已经尝试了下面显示的代码,但我收到错误“无效使用 Null”

Private Sub SelectTreatment_Click()

Dim i As Integer
Dim sumduration As Integer
sumduration = 0

For i = 0 To Me.SelectTreatment.ListCount - 1

    If Me.SelectTreatment.ItemsSelected(i) Then
         sumduration = sumduration + Me.SelectTreatment.Column(4, i)
    End If

Next i


End Sub

谁能告诉我这段代码有什么问题或更好的解决方案?

标签: ms-accesslistboxvba

解决方案


我只是稍微更改了您的代码。这应该可以解决问题。只需确保您在第 5 列(索引号 4)中有数值。

Private Sub SelectTreatment_Click()
Dim i As Integer
Dim sumduration As Integer
sumduration = 0
Dim frm As Form, ctl As Control, varItm As Variant

    Set frm = Forms!YourFormName
    Set ctl = frm!SelectTreatment
    For Each varItm In ctl.ItemsSelected
        sumduration = sumduration + ctl.Column(4, varItm)
    Next varItm
    Debug.Print sumduration
End Sub

推荐阅读