回 帖 发 新 帖 刷新版面

主题:求救,过程声明与同名事件或过程的描述不匹配

Dim ltmW As ListItem
Dim Sql As String
Dim msg As String
Dim RS As ADODB.Recordset
Private Sub cmdAdd_Click()
'添加
Dim i As Integer
If Trim(Me.txtNo.Text) <> "" And Trim(Me.txtSum.Text) <> "" Then
        Sql = "select 商品编号,销售价 from 商品库存表 where 商品编号= " & Trim(Me.txtNo.Text)
        Set RS = SelectSQL(Sql, msg)
        If RS.EOF Then
            MsgBox "库中无此商品!"
        Else
        For i = 1 To Me.ListView1.ListItems.Count
            If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
                MsgBox "列表中已有!"
                Exit Sub
            End If
        Next i
            Set ltmW = Me.ListView1.ListItems.Add
            ltmW.Text = Trim(Me.txtNo.Text)
            ltmW.ListSubItems.Add , , RS.Fields(0)
            ltmW.ListSubItems.Add , , RS.Fields(3)
            ltmW.ListSubItems.Add , , Trim(Me.txtSum.Text)
            'ltmW.ListSubItems.Add , , RS.Fields(2)
            Me.txtAllValue.Text = Val(Me.txtAllValue.Text) + Val(Trim(Me.txtSum.Text)) * RS.Fields(3)
            Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        End If
        RS.Close
Else
    MsgBox "主键不能为空!"
End If
End Sub
Private Sub cmdAll_Click()
'结账数据入库
Dim i As Integer
For i = 1 To Me.ListView1.ListItems.Count
    Sql = "insert into 销售单表 values(" & Me.ListView1.ListItems(i).Text
    Sql = Sql & ",'" & Date
    Sql = Sql & "'," & Me.ListView1.ListItems(i).ListSubItems(3).Text
    Sql = Sql & ",'" & Time
    Sql = Sql & "')"
   ' dbOperateW Sql
   BatchSelectSQL Sql
Next i
Me.txtR.Text = Str((Val(Trim(Me.txtGive.Text)) - Val(Trim(Me.txtAllValue.Text))))
Me.txtR.Text = Format(Me.txtR.Text, "#.##")
MsgBox "操作成功!总金额为" & Trim(Me.txtAllValue.Text) & "元,应找金额为" & Me.txtR.Text & "元"
Me.txtNo.Text = ""
Me.txtSum.Text = ""
Me.txtValue.Text = ""
Me.txtAllValue.Text = ""
End Sub

Private Sub cmdDel_Click()
'删除
Dim i As Integer, bln As Boolean
If Trim(Me.txtNo.Text) <> "" Then
    For i = 1 To Me.ListView1.ListItems.Count
        If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
            bln = True
            Exit For
        End If
    Next i
    If bln = True Then
        Me.txtAllValue.Text = Val(Me.txtAllValue.Text) - Val(Me.ListView1.ListItems(i).ListSubItems(2)) * _
                            Val(Me.ListView1.ListItems(i).ListSubItems(3))
        Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        Me.ListView1.ListItems.Remove (i)
        Me.txtNo.Text = ""
        Me.txtSum.Text = ""
        Me.txtValue.Text = ""
    Else
        MsgBox "列表中没有!"
    End If
Else
    MsgBox "主键不能为空!"
End If
End Sub

Private Sub cmdExit_Click()
'退出操作
    超市销售管理系统.Show
    Unload Me
End Sub
Private Sub Form_Unload(Cancel As Integer)
'退出操作
    超市销售管理系统.Enabled = True
    Unload Me
End Sub


Private Sub cmdModify_Click()
'修改
Dim i As Integer, bln As Boolean
If Trim(Me.txtNo.Text) <> "" Then
    For i = 1 To Me.ListView1.ListItems.Count
        If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
            bln = True
            Exit For
        End If
    Next i
    If bln = True Then
        Me.txtAllValue.Text = Val(Me.txtAllValue.Text) + Val(Me.ListView1.ListItems(i).ListSubItems(2)) * _
                                (Val(Trim(txtSum.Text)) - Val(Me.ListView1.ListItems(i).ListSubItems(3)))
        Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        Me.ListView1.ListItems(i).ListSubItems(3).Text = Trim(txtSum.Text)
    Else
        MsgBox "列表中没有!"
    End If
Else
    MsgBox "主键不能为空!"
End If
End Sub

Private Sub Command1_Click()
Me.ListView1.ListItems.Clear
End Sub



'Private Sub Form_Resize()
'控件大小的动态调整
'Dim i As Integer
'Me.ListView1.Width = Me.ScaleWidth
'For i = 1 To 5
   ' Me.ListView1.ColumnHeaders(i).Width = Me.ListView1.Width / 5
'Next i
'Me.ListView1.Top = 0
'Me.ListView1.Height = Me.ScaleHeight - Me.Picture1.Height
'Me.Picture1.Top = Me.ScaleHeight - Me.Picture1.Height
'Me.Picture1.Width = Me.ScaleWidth
'End Sub
Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Me.txtNo.Text = Item.Text
Me.txtValue.Text = Item.ListSubItems(2).Text
Me.txtSum.Text = Item.ListSubItems(3).Text
End Sub
Private Sub txtGive_KeyPress(KeyAscii As Integer)
'实付金额
If Not IsNumeric(Trim(Me.txtGive.Text)) And Trim(Me.txtGive.Text) <> "" Then
    MsgBox "请输入数字!"
End If
End Sub

Private Sub txtNo_KeyPress(KeyAscii As Integer)
'商品编号
If Not IsNumeric(Trim(Me.txtNo.Text)) And Trim(Me.txtNo.Text) <> "" Then
    MsgBox "请输入数字!"
End If
End Sub
Private Sub txtR_KeyPress(KeyAscii As Integer)

'应找金额
If Not IsNumeric(Trim(Me.txtR.Text)) And Trim(Me.txtR.Text) <> "" Then
    MsgBox "请输入数字!"
End If
End Sub

Private Sub txtSum_KeyPress(KeyAscii As Integer)

'数量
If Not IsNumeric(Trim(Me.txtSum.Text)) And Trim(Me.txtSum.Text) <> "" Then
    MsgBox "请输入数字!"
End If
End Sub
Private Sub txtValue_KeyPress(KeyAscii As Integer)

If Not IsNumeric(Trim(Me.txtValue.Text)) And Trim(Me.txtValue.Text) <> "" Then
   MsgBox "请输入数字!"
End If
End Sub



回复列表 (共7个回复)

沙发

模仿一下楼主:
出错的原因是因为你这些源代码中有一个字母打错了,请自己找出那个字母,并更正。

板凳


大哥呀,拜托好不好,我要能找出毛病来还用着求救吗?这是我毕业设计里的一个模块,这个模块坐不出来我就进行不下去了。

3 楼

把错误的行数写出来

4 楼

我这段代码是拷的,我自己也不是很懂,现在我把KeyPress过程去掉了,上面的错误就不存在了,但是新的错误又出现了。是未找到方法或数据成员:错误是点击“添加”时出现的出在第七行
Dim ltmW As ListItem
Dim SQL As String
Dim msg As String
Dim rs As ADODB.Recordset

Private Sub CmdAdd_Click()
'添加
Dim i As Integer
If Trim(Me.txtNo.Text) <> "" And Trim(Me.txtSum.Text) <> "" Then
        SQL = "select * from 商品库存表 where 商品编号= " & Trim(Me.txtNo.Text)
        Set rs = SelectSQL(SQL, msg)
        If rs.EOF Then
            MsgBox "库中无此商品!"
        Else
        For i = 1 To Me.ListView1.ListItems.Count
            If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
                MsgBox "列表中已有!"
                Exit Sub
            End If
        Next i
            Set ltmW = Me.ListView1.ListItems.Add
            ltmW.Text = Trim(Me.txtNo.Text)
            ltmW.ListSubItems.Add , , rs.Fields(0)
            ltmW.ListSubItems.Add , , rs.Fields(3)
            ltmW.ListSubItems.Add , , Trim(Me.txtSum.Text)
           ' ltmW.ListSubItems.Add , , rs.Fields(2)
            Me.txtAllValue.Text = Val(Me.txtAllValue.Text) + Val(Trim(Me.txtSum.Text)) * rs.Fields(3)
            Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        End If
        rs.Close
Else
    MsgBox "主键不能为空!"
End If
End Sub

Private Sub cmdAll_Click()
'结账数据入库
Dim i As Integer
For i = 1 To Me.ListView1.ListItems.Count
    SQL = "insert into 销售单表 values(" & Me.ListView1.ListItems(i).Text
    SQL = SQL & ",'" & Date
    SQL = SQL & "'," & Me.ListView1.ListItems(i).ListSubItems(3).Text
   ' SQL = SQL & ",'" & Time
    SQL = SQL & "')"
    'dbOperateW SQL
     'ExecuteSQL SQL
     SelectSQL(SQL, msg) = rs
Next i
Me.txtR.Text = Str((Val(Trim(Me.txtGive.Text)) - Val(Trim(Me.txtAllValue.Text))))
Me.txtR.Text = Format(Me.txtR.Text, "#.##")
MsgBox "操作成功!总金额为" & Trim(Me.txtAllValue.Text) & "元,应找金额为" & Me.txtR.Text & "元"
Me.txtNo.Text = ""
Me.txtSum.Text = ""
Me.txtValue.Text = ""
Me.txtAllValue.Text = ""
End Sub

Private Sub cmdDel_Click()
'删除
Dim i As Integer, bln As Boolean
If Trim(Me.txtNo.Text) <> "" Then
    For i = 1 To Me.ListView1.ListItems.Count
        If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
            bln = True
            Exit For
        End If
    Next i
    If bln = True Then
        Me.txtAllValue.Text = Val(Me.txtAllValue.Text) - Val(Me.ListView1.ListItems(i).ListSubItems(2)) * _
                            Val(Me.ListView1.ListItems(i).ListSubItems(3))
        Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        Me.ListView1.ListItems.Remove (i)
        Me.txtNo.Text = ""
        Me.txtSum.Text = ""
        Me.txtValue.Text = ""
    Else
        MsgBox "列表中没有!"
    End If
Else
    MsgBox "主键不能为空!"
End If
End Sub

Private Sub CmdExit_Click()
'退出操作
    超市销售管理系统.Show
    Unload Me
End Sub

Private Sub Form_Unload(Cancel As Integer)
'退出操作
    超市销售管理系统.Enabled = True
    Unload Me
End Sub
Private Sub CmdModify_Click()
'修改
Dim i As Integer, bln As Boolean
If Trim(Me.txtNo.Text) <> "" Then
    For i = 1 To Me.ListView1.ListItems.Count
        If Me.ListView1.ListItems(i).Text = Trim(Me.txtNo.Text) Then
            bln = True
            Exit For
        End If
    Next i
    If bln = True Then
        Me.txtAllValue.Text = Val(Me.txtAllValue.Text) + Val(Me.ListView1.ListItems(i).ListSubItems(2)) * _
                                (Val(Trim(txtSum.Text)) - Val(Me.ListView1.ListItems(i).ListSubItems(3)))
        Me.txtAllValue.Text = Format(Me.txtAllValue.Text, "#.##")
        Me.ListView1.ListItems(i).ListSubItems(3).Text = Trim(txtSum.Text)
    Else
        MsgBox "列表中没有!"
    End If
Else
    MsgBox "主键不能为空!"
End If
End Sub

Private Sub Command1_Click()
Me.ListView1.ListItems.Clear
End Sub



Private Sub ListView1_ItemClick(ByVal Item As MSComctlLib.ListItem)
Me.txtNo.Text = Item.Text
Me.txtValue.Text = Item.ListSubItems(2).Text
Me.txtSum.Text = Item.ListSubItems(3).Text
End Sub



5 楼

Me.txtNo 和 Me.txtSum是自定义的属性.
你没有声明不能用.你再好好看看你拷贝代码的地方在哪里声明的.
或者别人用的是自定义的控件

6 楼

[quote]Me.txtNo 和 Me.txtSum是自定义的属性.
你没有声明不能用.你再好好看看你拷贝代码的地方在哪里声明的.
或者别人用的是自定义的控件[/quote]
非也,Me就是指当前类模块(类似于C++里面的*this),Me.txtNo就是指当前窗体上的txtNo控件(例如Form1上的txtNo控件)

7 楼

是呀,那就是自定义的控件,我再看看吧

我来回复

您尚未登录,请登录后再回复。点此登录或注册