设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1804|回复: 6
打印 上一主题 下一主题

[窗体] 如何判断一个文本框的值是数字格式还是文本格式?

[复制链接]
跳转到指定楼层
1#
发表于 2007-9-8 10:07:32 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
如何判断一个文本框的值是数字格式还是文本格式?

tks!!!
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
 楼主| 发表于 2007-9-8 10:10:26 | 只看该作者
因为以这个文本框为条件做查询的时候,在SQL查询语句中以“数字格式”和“文本格式”为值的写法是不一样的
文本格式要加''
而数字就不用。。。
3#
发表于 2007-9-8 10:36:51 | 只看该作者
IsNumeric()
4#
 楼主| 发表于 2007-9-8 10:38:31 | 只看该作者
我用了这段代码来格式化字符串,也不行!(对数字型和日期型不起作用)
5#
 楼主| 发表于 2007-9-8 10:39:15 | 只看该作者
Option Compare Database

Function Q(ByVal SqlVariable As Variant) As String

'-----------------------------------------

'    Notes: Useful in creating properly FORMatted SQL statements

'    Usage: sql="select * from table where name= " & Q(vntName)

'    这个版本格式化适用于Access的变量,若支持其它数据库或许需要对其进行修改

'-----------------------------------------

On Error GoTo ErrTrap

Q = SqlVariable

'FORMat the string

Select Case varType(SqlVariable)

Case vbNull, vbEmpty

Q = "NULL"

Case vbString

Q = "'" & Replace(SqlVariable, "'", "''") & "'"

'date variable

Case vbDate

'FORMat and enclose in pounds signs for Access

Q = "#" & Format$(SqlVariable, "general date") & "#"

'otherwise treat as numeric

Case Else

On Error Resume Next

Q = CStr(SqlVariable)

If err.Number <> 0 Then Q = SqlVariable

End Select

Exit Function

ErrTrap:

On Error GoTo 0



End Function
6#
发表于 2007-9-8 11:12:37 | 只看该作者
你是不是搞颠倒了。哪道不是以sql的要求加引号,而是以文本框为准吗?
7#
 楼主| 发表于 2007-9-8 13:02:58 | 只看该作者
问题已经解决,谢谢!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-7 19:40 , Processed in 0.101607 second(s), 30 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表