On Error GoTo texterror If KeyAscii = keyenter Then MSFlexGrid1.Text = Text5.Text i = MSFlexGrid1.Row j = MSFlexGrid1.Col
If j = 0 And Trim(Text5.Text) = \
MsgBox \车辆名称不能为空\ Text5.SetFocus Exit Sub End If
If j = 1 And Not IsNumeric(Text5.Text) Then
MsgBox \单价请输入数字!\ Text5.SetFocus Exit Sub End If
If j = 2 And Not IsNumeric(Text5.Text) Then
MsgBox \数量请输入数字!\ Text5.SetFocus Exit Sub End If
If j = 3 And Trim(Text5.Text) = \
MsgBox \单位不能为空!\ Text5.SetFocus Exit Sub End If
If j = 3 And Not IsNull(Text5.Text) Then
MSFlexGrid1.Col = 1 '金额由程序算出 price = CDbl(MSFlexGrid1.Text) MSFlexGrid1.Col = 2
coun = CInt(MSFlexGrid1.Text) MSFlexGrid1.Col = 4
MSFlexGrid1.Text = price * coun MSFlexGrid1.Col = MSFlexGrid1.Col + 1 Text5.Visible = False
setcombo2 MSFlexGrid1.Row, MSFlexGrid1.Col KeyAscii = 0 Exit Sub End If
MSFlexGrid1.Col = MSFlexGrid1.Col + 1
nextposition MSFlexGrid1.Row, MSFlexGrid1.Col End If Exit Sub texterror:
MsgBox Err.Description End Sub
Public Sub setcombo2(ByVal r As Integer, ByVal c As Integer) On Error GoTo seterror
Combo2.Width = MSFlexGrid1.CellWidth
Combo2.Left = MSFlexGrid1.Left + MSFlexGrid1.ColPos(c) Combo2.Top = MSFlexGrid1.Top + MSFlexGrid1.RowPos(r) Combo2.Text = MSFlexGrid1.Text Combo2.Visible = True Combo2.SetFocus Exit Sub seterror:
MsgBox Err.Description End Sub
销售管理代码如下:
Option Explicit
Dim rs_checkname As New ADODB.Recordset
Const row_num = 10 '表格行数 Const col_num = 6 '表格列数 Private Sub Combo1_Click() MSFlexGrid1.Text = Combo1.Text MSFlexGrid1.Row = MSFlexGrid1.Row + 1 MSFlexGrid1.Col = 0 Combo1.Visible = False Text5.Visible = True
nextposition MSFlexGrid1.Row, MSFlexGrid1.Col End Sub
Private Sub Command1_Click() Dim rs_save As New ADODB.Recordset Dim sql As String Dim i As Integer
Dim s As String '转化数据用 On Error GoTo saveerror If Trim(Text1.Text) = \
MsgBox \提货单号不能为空!\ Text1.SetFocus Exit Sub End If
If Combo1.Text = \请选择车辆名称\
MsgBox \请选择车辆名称!\ Combo1.SetFocus Exit Sub End If
If Comboy.Text = \
MsgBox \请选择年份!\ Comboy.SetFocus Exit Sub End If
If Combom.Text = \
MsgBox \请选择月份!\ Combom.SetFocus Exit Sub End If
If Combod.Text = \
MsgBox \请选择日期!\ Combod.SetFocus
Exit Sub End If
If MSFlexGrid1.Col <> 0 Then
MsgBox \请输入完整的物品信息!\ Text5.SetFocus Exit Sub End If
sql = \销售单 where 提货单号='\rs_save.Open sql, conn, adOpenKeyset, adLockPessimistic If rs_save.EOF Then rs_save.AddNew
rs_save.Fields(0) = Trim(Text1.Text)
rs_save.Fields(1) = CDate(Trim(Comboy.Text) & \ rs_save.Fields(2) = Trim(Combo1.Text) rs_save.Fields(3) = Trim(Text2.Text) rs_save.Fields(4) = Trim(Text3.Text) rs_save.Fields(5) = Trim(Text4.Text) rs_save.Update rs_save.Close Else
MsgBox \提货单号重复!\ Text1.SetFocus Text1.Text = \ rs_save.Close Exit Sub End If
sql = \车辆资料\
rs_save.Open sql, conn, adOpenKeyset, adLockPessimistic For i = 1 To MSFlexGrid1.Row - 1 rs_save.AddNew
rs_save.Fields(0) = Trim(Text1.Text)
rs_save.Fields(1) = CDate(Trim(Comboy.Text) & \& Trim(Combom.Text) & \& Trim(Combod.Text)) rs_save.Fields(2) = Trim(Combo1.Text) MSFlexGrid1.Row = i MSFlexGrid1.Col = 0
rs_save.Fields(3) = Trim(MSFlexGrid1.Text) MSFlexGrid1.Col = 1 MSFlexGrid1.Col = 2
rs_save.Fields(5) = Trim(MSFlexGrid1.Text) MSFlexGrid1.Col = 3
rs_save.Fields(6) = Trim(MSFlexGrid1.Text) MSFlexGrid1.Col = 4 MSFlexGrid1.Col = 5
rs_save.Fields(8) = Trim(MSFlexGrid1.Text) Next i
rs_save.Update rs_save.Close
MsgBox \添加成功!\Unload Me Exit Sub saveerror:
MsgBox Err.Description End Sub
Private Sub Command2_Click() Unload Me End Sub
Private Sub Form_Load() Dim sql As String Dim i As Integer On Error GoTo loaderror sql = \车辆名称\
rs_checkname.CursorLocation = adUseClient
rs_checkname.Open sql, conn, adOpenKeyset, adLockPessimistic sql = \供应商名称\rs_custom.CursorLocation = adUseClient
rs_custom.Open sql, conn, adOpenKeyset, adLockPessimistic While Not rs_custom.EOF
Combo1.AddItem rs_custom.Fields(0) rs_custom.MoveNext Wend
If Not rs_checkname.EOF Then rs_checkname.MoveFirst
While Not rs_checkname.EOF '添加可选择的发货地 Combo1.AddItem rs_checkname.Fields(0) rs_checkname.MoveNext Wend End If
Comboy.AddItem 2002 '添加年份 Comboy.AddItem 2003 Comboy.AddItem 2004