我的数据库是ACCESS,
点击按钮时错误提示为:要求对象.代码如下:
Private Sub ExecuDate(ByVal date1 As Date, ByVal date2 As Date)
    Dim intYear As Integer
    Dim intMonth As Integer
    Dim intDay As Integer
    Dim ListItemTemp As ListItem
    
    intYear = Year(date1)
    intMonth = Month(date1)
    
    ListView1.ListItems.Clear
    Do While 1
        intDay = Day(date1)
        
Next1:  If IsDate(intYear & "-" & intMonth & "-" & intDay) Then
            Set ListItemTemp = ListView1.ListItems.Add(, , CDate(intYear & "-" & intMonth & "-" & intDay))
            ListItemTemp.SubItems(1) = IIf(Trim(mian.Text8.Text) = "", " ", Trim(mian.Text8.Text))
            ListItemTemp.SubItems(2) = IIf(Trim(mian.Text9.Text) = "", " ", Trim(mian.Text9.Text))
            ListItemTemp.SubItems(3) = IIf(Trim(mian.Text10.Text) = "", " ", Trim(mian.Text10.Text))
            ListItemTemp.SubItems(4) = IIf(Trim(mian.Text12.Text) = "", " ", Trim(mian.Text12.Text))
            ListItemTemp.SubItems(5) = IIf(Trim(mian.Text11.Text) = "", " ", Trim(mian.Text11.Text))        Else
            intDay = intDay - 1
            GoTo Next1
        End If
        
        If (Month(date2) = 1 And (intYear = Year(date2) - 1 And intMonth = 12)) Or _
            (intYear = Year(date2) And intMonth = Month(date2) - 1) Then
            Exit Sub
        Else
            If intMonth = 12 Then
                intYear = intYear + 1
                intMonth = 1
            Else
                intMonth = intMonth + 1
            End If
        End If
    Loop
End Sub
Private Sub Form_Load()
''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''LISTVIEW加载表头
    With ListView1
        .ColumnHeaders.Clear
        .ListItems.Clear
        
        .ColumnHeaders.Add , , "日期"
        .ColumnHeaders(1).Width = 1500
        .ColumnHeaders(1).Alignment = lvwColumnLeft
        .ColumnHeaders.Add , , "租金"
        .ColumnHeaders(2).Width = 1200
        .ColumnHeaders(2).Alignment = lvwColumnRight
        .ColumnHeaders.Add , , "水费"
        .ColumnHeaders(3).Alignment = lvwColumnRight
        .ColumnHeaders(3).Width = 1200
        .ColumnHeaders.Add , , "电费"
        .ColumnHeaders(4).Alignment = lvwColumnRight
        .ColumnHeaders(4).Width = 1200
        .ColumnHeaders.Add , , "管理费"
        .ColumnHeaders(5).Alignment = lvwColumnRight
        .ColumnHeaders(5).Width = 1200
        .ColumnHeaders.Add , , "耗材费"
        .ColumnHeaders(6).Alignment = lvwColumnRight
        .ColumnHeaders(6).Width = 1200
    End With
'''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''LISTVIEW日期加载
ExecuDate CDate(mian.Text3.Text), CDate(mian.Text4.Text)end subPrivate Sub Command1_Click()
 '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''保存按钮
Adodc1.Recordset.AddNew
Adodc1.Recordset.Fields("合同号") = Text6.Text
Adodc1.Recordset.Fields("客户名称") = Text7.Text
Adodc1.Recordset.Fields("分店") = Text9.Text
Adodc1.Recordset.Fields("年月") = ListItemTemp.SubItems(0)
Adodc1.Recordset.Fields("租金") = ListItemTemp.SubItems(1)
Adodc1.Recordset.Fields("水费") = ListItemTemp.SubItems(2)
Adodc1.Recordset.Fields("电费") = ListItemTemp.SubItems(3)
Adodc1.Recordset.Fields("管理费") = ListItemTemp.SubItems(4)
Adodc1.Recordset.Fields("耗材费") = ListItemTemp.SubItems(5)   If mian.Option1(0).Value = True Then
      Adodc1.Recordset.Fields("专柜编号") = mian.Option1(0).Caption
   Else
      Adodc1.Recordset.Fields("专柜编号") = mian.Option1(1).Caption
   End If
Adodc1.Recordset.Update    End Sub

解决方案 »

  1.   

    我调试时,以下的语句为NULL
    Adodc1.Recordset.Fields("年月") = ListItemTemp.SubItems(0) 
    Adodc1.Recordset.Fields("租金") = ListItemTemp.SubItems(1) 
    Adodc1.Recordset.Fields("水费") = ListItemTemp.SubItems(2) 
    Adodc1.Recordset.Fields("电费") = ListItemTemp.SubItems(3) 
    Adodc1.Recordset.Fields("管理费") = ListItemTemp.SubItems(4) 
    Adodc1.Recordset.Fields("耗材费") = ListItemTemp.SubItems(5) 
      

  2.   

    Dim ListItemTemp As ListItem 
    是不是针对你的form的全局变量?