我建了一个数据库,库房有进库和出库,怎么能在一个表里完成进库时相同的货物数量,金额,数量余额相加。出库时相同货物的数量,金额,数量余额相减呢!
Private Sub In_depot_Click()
jinku.Caption = "入库"
InandOut_depot.Show
End SubPrivate Sub Out_depot_Click()
jinku.Caption = "出库"
InandOut_depot.Show
End Sub
上面是我调出库房记录的窗体。Option Explicit
Dim rs_find As New ADODB.Recordset
Private Sub Command1_Click()
On Error GoTo cmderror
Dim Sql As String
Sql = "select * from 入出库 "
Adodc1.Refresh
Adodc1.Recordset.AddNew                         '将文本框中用户输入的各个字段取值填入相应的字段
Adodc1.Recordset.Fields("品名") = Combo2.Text
Adodc1.Recordset.Fields("单价") = Val(Text2.Text)
Adodc1.Recordset.Fields("数量") = Val(Text3.Text)
Adodc1.Recordset.Fields("货物余额") = Val(Text4.Text)
Adodc1.Recordset.Fields("单位") = Text5.Text
Adodc1.Recordset.Fields("金额") = Val(Text6.Text)
Adodc1.Recordset.Fields("备注") = Text7.Text
Adodc1.Recordset.Fields("经办人") = Combo1.Text
Adodc1.Recordset.Fields("日期") = comboy.Text & "-" & combom.Text & "-" & combod.Text
Adodc1.Recordset.Update
Adodc1.Refresh
MsgBox "添加成功!", vbOKOnly + vbExclamation, ""
cmderror:
If Combo2.Text = "" Then
  MsgBox "品名不能为空!", vbOKOnly + vbExclamation, "警告"
End If
End SubPrivate Sub Command2_Click()
Unload Me
End SubPrivate Sub Command3_Click()Adodc1.Recordset.Delete
Adodc1.Recordset.UpdateEnd SubPrivate Sub Form_Load()
Dim Sql As String
Dim i As Integer
   If jinku.Caption = "入库" Then                 '入出库标记
      rs_save.Fields("入出库") = True
   Else
      rs_save.Fields("入出库") = False
   End If
   rs_save.Update
   rs_save.Close
Sql = "select distinct  经办人 from 入出库 order by 经办人 desc"
rs_find.CursorLocation = adUseClient
rs_find.Open Sql, conn, adOpenKeyset, adLockPessimistic
If rs_find.EOF = False Then               '添加经办人
   With rs_find
        Do While Not .EOF
           Combo1.AddItem .Fields("经办人")
           .MoveNext
        Loop
   End With
End If
rs_find.Close
Sql = "select distinct 品名 from 入出库 order by 品名 desc"
rs_find.CursorLocation = adUseClient
rs_find.Open Sql, conn, adOpenKeyset, adLockPessimistic
If rs_find.EOF = False Then               '添加品名
   With rs_find
        Do While Not .EOF
           Combo2.AddItem .Fields("品名")
           .MoveNext
        Loop
   End With
End If
comboy.AddItem 2004                          '添加年份
comboy.AddItem 2005
comboy.AddItem 2006
comboy.AddItem 2007
comboy.AddItem 2008
comboy.AddItem 2009
comboy.AddItem 2010
comboy.AddItem 2011
comboy.AddItem 2012
comboy.AddItem 2013
For i = 1 To 12                               '添加月份
    combom.AddItem i
Next i
For i = 1 To 31                               '添加日期
    combod.AddItem i
Next i
End SubPrivate Sub Form_Unload(Cancel As Integer)
rs_find.Close
End Sub
这是我的库房记录窗体的代码,希望大家看后给个帮助。我是新手所以希望能帮写出代码,谢谢!(附件添加数据库时出错,要用数据库的留下邮箱我给传过去)