报销教程学习之技巧总结1:姓名文本框输入字符数自动检测-张晓
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access开发平台


报销教程学习之技巧总结1:姓名文本框输入字符数自动检测

发表时间:2013/2/6 15:44:30 评论(0) 浏览(6667)  评论 | 加入收藏 | 复制
   
摘 要:取得当前数据库表格中某字段的长度
正 文:

   报销教程中,新增窗体的制作中,有自动检测姓名是否存在的语句。但在实际操作过程中,还缺少自动检测文本框内字符长度的语句。教程(2010版)中的【4.3 新增窗体的制作】的最后部分也提到,截图如下:

为了处理这个errhandle,我们可以用以下语句检测文本框内字符长度

 

If Len(Me.ygxm) > 10 Then
        MsgBox "您输入的字符过长,请重新输入!", vbCritical, "请不要超过20个字符"
        Me.ygxm.SetFocus
        Exit Sub
 End If
但是如果我们调整了表格中字段的长度,比如把tblcodeyg中字段ygxm的长度由原来的10缩短到4,就需要修改上面的判断语句


因此。我写了个取得表格中字段长度的函数——intFieldsLens,这样可以自动判断字段长度,上面的语句就可以这样写


    If Len(Me.ygxm) > IntFieldLen("tblcodeyg", "ygxm") Then '取得某表某字段的长度
        MsgBox "您输入的字符过长,请重新输入!", vbCritical, "请不要超过20个字符"
        Me.ygxm.SetFocus
        Exit Sub
    End If


 

函数intFieldsLens的代码如下:

Public Function IntFieldLen(ByVal sTableName As String, ByVal sFieldName As String) As Integer
'检测表中字段长度
'使用示例: IsExistField("订单表","订单日期") 测订单表字段长度
    Dim fld As Field
    Dim rs As DAO.Recordset
    IntFieldLen = 0
    Set rs = CurrentDb.OpenRecordset(sTableName)
    For Each fld In rs.Fields
        If fld.Name = sFieldName Then
            IntFieldLen = fld.Size
            Exit For
        End If
    Next
    rs.Close
    Set rs = Nothing
    Set fld = Nothing
    
ExitHere:
    Set rs = Nothing
    Set fld = Nothing
    Exit Function
    
ErrorHandler:
    MsgBox Err.Description, vbInformation, "提示"
    Resume ExitHere
End Function


附上我们的新增窗口窗体文件,里面有全部代码

点击下载此附件


Access软件网交流QQ群(群号:198465573)
 
 相关文章
access开发平台新增,修改,删除,查找VBA代码详解\acce...  【Access软件网编著  2008/1/26】
限定字段的录入字符数  【贺德才  2008/1/28】
学习报销教程解决的问题  【木木  2009/5/30】
【access入门】两种方法指定输入字符位数长度的示例(Len函数...  【麥田  2012/4/10】
关于报销教程中office2003无法添加日期控件的解决办法\wi...  【fxs  2012/5/3】
【Access入门】控制输入字符长度,限制输入数据位数、长度的示例...  【麥田  2012/12/24】
常见问答
技术分类
相关资源
文章搜索
关于作者

张晓

文章分类

文章存档

友情链接