blic Sub DispGoods(ByVal sql As String, Optional ByVal lngPageIndex As Long = 1, Optional ByVal lngPageSize As Long = -1)  '装载商品资料
    Dim Item As ListItem, i As Long, lngPageCount As Long
    Dim rs As ADODB.Recordset
    Set rs = QueryExt(sql)
    List1.ListItems.Clear   '清空列表视控件
    List1.Sorted = False    '不排序
    If lngPageSize = -1 Then    '每页数量若为默认值
        rs.PageSize = rs.RecordCount + 1    '设置页大小为记录数加1
    Else
        rs.PageSize = lngPageSize   '设置页大小为指定数量
    End If
    If Not rs.EOF Then rs.AbsolutePage = lngPageIndex   '设置页号
    lngPageCount = Int(rs.RecordCount / rs.PageSize) + IIf(rs.RecordCount Mod rs.PageSize = 0, 0, 1)    '计算总页数
    cmdFirst.Enabled = (lngPageIndex > 1)   '设置各按钮的使用状态
    cmdPre.Enabled = (lngPageIndex > 1)
    cmdNext.Enabled = (lngPageIndex < lngPageCount)
    cmdLast.Enabled = (lngPageIndex < lngPageCount)
    cmbPage.Enabled = False
    If cmbPage.ListCount <> lngPageCount Then   '页数列表框中的选项数不等于总页数
        cmbPage.Clear   '清空组合框
        cmbPage.AddItem "[全部]"    '首先添加一个“全部”选项
        If lngPageSize = -1 Then    '页大小为默认值
            cmbPage.AddItem "[分页]"    '添加一个“分页”选项
            cmbPage.ListIndex = 0   '设置显示“全部”(第1项)
        Else    '设置了页大小
            For j = 1 To lngPageCount   '循环将页号添加到组合框中
                cmbPage.AddItem j
            Next
            cmbPage.ListIndex = lngPageIndex    '当前显示页为指定页
        End If
    End If
    cmbPage.Enabled = True  '允许用户选择页号
    If Not rs.EOF Then  '若记录集不为空
        Do While Not rs.EOF And i < rs.PageSize '若记录集不为空,且记录数少于页大小
            Set Item = List1.ListItems.Add(, "k" & rs("GoodsID"), rs("GoodsName"), , 1) '设置一个选项
            With Item
                .SubItems(1) = rs("GoodsPrice") '单价
                .SubItems(2) = rs("BarCode")    '条码
                .SubItems(3) = rs("GoodsNum")   '数量
                .SubItems(4) = IIf(CLng(rs("AllowSale")) = 1, "允许", "") '允许销售?
...........就是这里报错
                .SubItems(5) = GetGoodsState(Item, CLng(rs("GoodsNum")), CLng(rs("CautionNum")), CLng(rs("AllowSale"))) '状态
                .SubItems(6) = rs("FactoryName")    '厂商名
                .SubItems(7) = rs("ProvideName")    '供应商名
                .Tag = rs("PlanNum")    '保存计划进货数量
            End With
            rs.MoveNext '下一记录
            i = i + 1   '记录器增加1
        Loop
    End If
    frmMain.StatusBar1.Panels(1) = "共 " & rs.RecordCount & " 条商品记录, 当前页 " & i & " 条。"
End Sub