SQL102 = Nz(Me.Textdate.Value)
For i = 1 To SQL104
StrSQL1 = " INSERT INTO 出勤管理 ( 日期 ) " _
& " #" & SQL102 & "# AS 日期, "_
& " FROM 二级表 "
DoCmd.RunSQL StrSQL1
SQL102 = SQL102 + 1
Next
别人写的程勋 我在看代码的时候SQL102 SQL104 定义的是String
SQL102从 Textdate文本框获得日期 格式“2017/6/27”
SQL104 是从文本框获得的出勤天数
不太懂VB 真的能这么写么
尤其是日期加1 太神奇了把0.0
Date 变量存储为 IEEE 64 位(8 个字节)浮点数值形式,其可以表示的日期范围从 100 年 1 月 1 日到 9999 年 12 月 31 日,而时间可以从 0:00:00 到 23:59:59。任何可辨认的文本日期都可以赋值给 Date 变量。日期文字须以数字符号 (#) 扩起来,例如,#January 1, 1993# 或 #1 Jan 93#。
Date 变量会根据计算机中的短日期格式来显示。时间则根据计算机的时间格式(12 或 24 小时制)来显示。
msdn上的解释,看来这样是可以的,他转换成浮点数了。
日期这样处理没见过,按理说是不行的,一般都是 DateAdd函数来加减日期,用DateDiff比较日期差值的。
文本框里读过来的string当数字用是可以的。