作者cluss (高速离心机)
看板Visual_Basic
标题[VBA ] excel msgbox
时间Tue Mar 5 14:51:50 2013
各位好
我写了一个小程式用来记录刷卡的时间点
语法如下,目标是以身份证去对照资料来记录该人刷卡的时间点
Private Sub TextBox1_Change()
If Len(TextBox1.Value) > 9 Then '#侦测输入字元是否大於9个,大於就下一步
Worksheets("Sign_in").Range("k1") = TextBox1.Value '#把输入的资料丢入k1
If Worksheets("Sign_in").Range("k7") = 0 Then '#有找到此人
Worksheets("Sign_in").Range("k4") = Time '%显示目前时间於k4
Worksheets("DATA").Cells(Worksheets("Sign_in").Range("k2"),
Worksheets("Sign_in").Range("k3")) = Time '#把时间丢进目标sheet
label_no.Caption = Worksheets("Sign_in").Range("k5") '#把k5丢进label_no 显示
label_name.Caption = Worksheets("Sign_in").Range("k6")
MsgBox "刷卡成功" '#有抓到就显示刷卡成功
Else
MsgBox "刷卡错误" '#没抓到就显示刷卡失败
label_no.Caption = "" '#消除label
label_name.Caption = "" '消除label
TextBox1.Text = "" '#等待下一个刷卡
End If
End If
End Sub
现在问题在於,msgbox刷卡成功,显示後,我的label还是呈现空白
非要按enter才会显示我要的文字,请问要怎麽修改才能在msg出来前就显示上去
感激!!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 42.72.131.249
1F:→ tsongs:把label移到MsgBox前面 因为MsgBox跑完才跑下一行 03/05 22:46
2F:→ cluss:可是label是在msgbox前方没错,後面的是按enter後消除label 03/05 23:16
3F:→ cluss:但是就是没办法在msgbox出来前,让label显示上去 03/05 23:17
4F:→ cluss:而是按了msgbox之後才显示出来,一整个怪怪的 03/05 23:17
5F:→ tsongs:看错看到错误那边 msgbox前面加个DOEVENT试看看 03/06 16:18
6F:→ Catbert:label前面先加个debug.print,印出K5, K6的值看看 03/06 22:01