Office中国论坛/Access中国论坛

标题: 组合框自动添加新条目例子 [打印本页]

作者: 咱家是猫    时间: 2010-7-27 09:24
标题: 组合框自动添加新条目例子
很久以前做的例子,一直以为曾上传过,今天为了给网友找例子而搜过,竟无果,于是重新上传.

[attach]42862[/attach]

[attach]57246[/attach]


作者: tmtony    时间: 2010-7-27 09:47
收藏并下载。谢谢分享。
作者: asklove    时间: 2010-7-27 10:25
收藏!
作者: liaohk    时间: 2010-7-27 12:07
收藏并下载。谢谢分享。
作者: chuang0321    时间: 2010-7-27 12:17
收下,谢谢分享!
作者: lovehere    时间: 2010-7-27 13:46
收藏学习了。
作者: 82077802    时间: 2010-7-27 19:35
收藏并下载。谢谢分享。
作者: yekai_hua    时间: 2010-8-10 15:08
找死我了
作者: wang1950317    时间: 2010-8-10 16:37
学习学习!
作者: todaynew    时间: 2010-8-11 11:12
本帖最后由 todaynew 于 2010-8-11 15:17 编辑

可进一步写成通用性的函数。以适应类型为数据列表/表和查询,以及为数据源为sql语句等情况。
Public Function newVal(ctl As Control, NewData As String, Response As Integer)
'功能:组合框添加数据
'适用:1、值列表
'      2、表或查询---仅适用一种情况:表中的ID字段为自动编号数据类型。
'示例:在出仓类别的【不在列表中】事件中写入代码:
'   Private Sub 出仓类别_NotInList(NewData As String, Response As Integer)
'      newVal Me.出仓类别, NewData, Response
'   End Sub
Select Case ctl.RowSourceType
    Case "Table/Query"
        Dim rs As New ADODB.Recordset
        Dim ssql As String
        Dim A, i As Long
        If MsgBox("所输数据不在选择列表中,确认存储数据吗?", vbOKCancel, "确认存储数据") = vbOK Then
            Response = acDataErrAdded
            ssql = ctl.RowSource
            rs.Open ssql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
            rs.AddNew
            A = Split(ctl.ColumnWidths, ";")
            For i = 0 To UBound(A, 1)
                If Val(A(i)) > 0 Then
                    Exit For
                End If
            Next
            rs.Fields(i).Value = NewData
            rs.Update
            rs.Close
            ctl.RowSource = ssql
        Else
            Response = acDataErrContinue
            ctl.Undo
        End If
    Case "Value List"
        If MsgBox("所输数据不在选择列表中,确认存储数据吗?", vbOKCancel, "确认存储数据") = vbOK Then
            Response = acDataErrAdded
            ctl.RowSource = ctl.RowSource & ";" & NewData
        Else
            Response = acDataErrContinue
            ctl.Undo
        End If
End Select
End Function


作者: li08hua    时间: 2010-8-13 22:53
是个好思路!
作者: df    时间: 2010-8-14 11:18
谢谢分享。
作者: wang1950317    时间: 2010-8-14 16:33
锦上添花!
作者: h33691    时间: 2010-8-14 22:41
谢谢分享

作者: 风啸啸    时间: 2010-8-15 14:18
学习。
作者: szyewj    时间: 2011-5-11 01:08
学习学习
作者: cjf78    时间: 2011-6-11 10:30
组合框如何联动
作者: fjh    时间: 2015-9-28 16:43
下来学习看看
作者: zhlc    时间: 2015-9-28 21:19
学习
作者: zhlc    时间: 2015-9-28 21:20
学习




欢迎光临 Office中国论坛/Access中国论坛 (http://www.office-cn.net/) Powered by Discuz! X3.3