Dim msql As String
msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间"
Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly)
While Not rst.EOF
MsgBox rst!开船时间
rst.MoveNext
Wend
rst.Closedim strmsg as string
while not rst.eof
strmsg=strmsg+rst!开船时间
rst.movenext wend msgbox strmsg
可是这样运行的结果是当有一个时间满足时,有个消息框把时间显示出来,按消息框上的确定,又弹一个消息框,把满足条件的第二个时间显示出了就是消息框上显示2009年4月1日,我点确定,又一个消息框,显示2009年4月2日。。,我想要的结果是::比如我查询出有2009年4月1日,4月2日是满足的,把满足条件的时间一起提示出来,就提示一个消息框!
比如消息框上显示2009年4月1日,2009年4月2日,按我的结果,如何更改啊?
msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间"
Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly)
While Not rst.EOF
MsgBox rst!开船时间
rst.MoveNext
Wend
rst.Closedim strmsg as string
while not rst.eof
strmsg=strmsg+rst!开船时间
rst.movenext wend msgbox strmsg
可是这样运行的结果是当有一个时间满足时,有个消息框把时间显示出来,按消息框上的确定,又弹一个消息框,把满足条件的第二个时间显示出了就是消息框上显示2009年4月1日,我点确定,又一个消息框,显示2009年4月2日。。,我想要的结果是::比如我查询出有2009年4月1日,4月2日是满足的,把满足条件的时间一起提示出来,就提示一个消息框!
比如消息框上显示2009年4月1日,2009年4月2日,按我的结果,如何更改啊?
Dim msql As String
msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间"
Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly)
While Not rst.EOF
MsgBox rst!开船时间
rst.MoveNext
Wend
dim strmsg as string
while not rst.eof
strmsg=strmsg+rst!开船时间
rst.movenext
wend
rst.Close '''把rst.Close放在这里试试
msgbox strmsg 这样你试试看行不行
楼主的代码有逻辑问题吧!
........
While Not rst.EOF
..........
Wend
rst.Close '这里 rst 已经执行关闭操作了,后面还能用吗?dim strmsg as string
while not rst.eof
.......你试一下这样行不行:
Dim msql As String
dim strMsg as string
msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间"
Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly)
While Not rst.EOF
strMsg = strMsg & rst!开船时间
rst.MoveNext
Wend
rst.Close
MsgBox strMsg, 64, "开船时间"
不好意思,dim strmsg as string
while not rst.eof
strmsg=strmsg+rst!开船时间
r…
是我想改多添加进去的,在这里忘记注西掉了,我的代码只是前面,我按你说法看看
???
我给你的代码可是用的 & 呀。
也可以这样写:
strMsg = strMsg & Format$(rst!开船时间, "yyyy年mm月dd日")
我按下面可以实现把满足条件的时间一起在消息框上显示了,可是显示的时间是连一起的,很 容易看错,如何在各个时间后用逗号或什么符号把各个时间分开啊,比如2009-04-01,2009-04-02,下面的显示是2009-04-012009-04-02Dim msql As String Dim strmsg As String msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间" Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly) While Not rst.EOF strmsg = strmsg & rst!开船时间 rst.MoveNext Wend rst.Close MsgBox strmsg, 64, "开船时间"
Dim msql As String
dim strMsg as string
msql = "select 过帐状态表.开船时间 as 开船时间 from 过帐状态表 where 状态 = '0' and 开船时间 between '" & starDT & "' and '" & endDT & "' group by 开船时间"
Set rst = cn.OpenResultset(msql, rdOpenStatic, rdConcurReadOnly)
While Not rst.EOF
strMsg = strMsg & Format$(rst!开船时间, "yyyy年mm月dd日;")'(rst!开船时间, "自定义格式")
rst.MoveNext
Wend
rst.Close
set rst=nothing
strmsg = strmsg & rst!开船时间 & vbCrLf如果结果很多的话,加分隔符,让它自动换行:
strmsg = strmsg & rst!开船时间 & ","