Private Sub Text1_Change()
a = Format(Date, "yyyy")
Text2 = Val(a) - Val(Text1) + 1
End Sub
你自己改良下
如图所示:
程序中主要涉及到一下几点:
1、数据控件 aAdodc 连接数据库
在Form_Load 中使用如下的程序连接Access 数据库 \db7mdb
Dim connStr As String
connStr = "Provider=MicrosoftJetOLEDB40;Data Source=" + AppPath + "\db7mdb;Persist Security Info=False"
With Adodc1
ConnectionString = connStr
CommandType = adCmdText
CursorType = adOpenDynamic
RecordSource = "SELECT FROM T107"
Refresh
End With
2、数据控件 DataGrid 的设置,要研究其属性设置
3、利用ADO 访问Access数据库
如按扭"计算实际年龄"的程序部分
Private Sub Command1_Click()
Dim connStr As String
Dim mySQL As String
Dim adoConn As New ADODBConnection
Dim adoRs As New ADODBRecordset
If Trim(Text1) = "" Then
MsgBox "请输入有效的编号!", 48, "重要提示"
Exit Sub
End If
mySQL = "SELECT DATEDIFF('yyyy',sBirth,Date()) As Years FROM T107 WHERE sCode='" + Trim(Text1) + "'"
connStr = "Provider=MicrosoftJetOLEDB40;Data Source=" + AppPath + "\db7mdb;Persist Security Info=False"
adoConnOpen connStr
adoRsOpen mySQL, adoConn, adOpenDynamic, adLockReadOnly
If adoRsBOF And adoRsEOF Then
MsgBox "输入的编号查无此人!", 48, "重要提示"
adoRsClose
adoConnClose
Exit Sub
Else
Text2 = "您已经:" + Str(adoRs(0)) + "岁"
End If
End Sub
更新详细的内容可以下载附件中的程序,其中包含了数据库db7mdb 及Form7
1,MaskEdBoxFormat="dd-mm-yy"
2,ComBo很难做的,比如选了月,那么你要根据选的年和月,判断第三个ComBo中的天数,这要一个庞大的数组来记录
万年历
3,计算年龄用DateDiff
Age=DateDiff("yyyy",
"2008-9-28",
Now)'现在年龄多少
Age=DateDiff("yyyy",
"2008-9-28",
"2008-5-1")
yyyy
年
q
季
m
月
y
一年的日数
d
日
w
一周的日数
ww
周
h
时
n
分钟
s
秒
以上就是关于vb6.0+access自动计算年龄问题全部的内容,包括:vb6.0+access自动计算年龄问题、vb连接access数据库后如何对其中的数据进行某种计算,然后把结果显示在文本框里谢谢、VB ACC数据库插入日期问题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)