2017-06-16 107 views
0

我正在完成一个程序,并且想要为“about”选项卡做点什么想象。我是复活节彩蛋等的狂热粉丝,并且想要做一些很酷的事情。我的想法是当按钮被按下时,运行一个函数来与单元格做彩色贴图,而msgbox弹出窗口显示“嘿感谢您使用我的程序”或类似的东西,然后功能结束,一旦msgbox“ok”有被点击。有没有简单的方法来做到这一点?这不是非常重要,但它对未来的应用程序也非常有用。msgbox打开时允许函数/循环运行VBA

这里是有点儿什么我想:

do while msgbox <> ok 
'something amazing I guess 
next 

我找不到任何远程相似;这是说我可能不会问正确的问题。提前致谢!

+4

使用自定义的用户窗体并使用非模式选项显示它。 –

+0

@蒂姆威廉姆斯,如果我理解了这些,它将无法工作。我需要的功能是无限的,直到“ok”被按下。我的理解是,非模态用户形式在时间/任务结束时终止,而不是表单自己关闭。 – corvonik

+3

非模态保持打开状态直至关闭它们。你可以在进入循环之前启动表单,然后在表单上有一个终止循环的按钮(通过在循环中检查表单上设置Global标志或属性) - 当循环检测到“OK “它退出。您可能必须使用DoEvents才能允许表单响应“确定”按钮,具体取决于您计划使用的循环类型。 –

回答

1

在我看来,你可以做到这一点上的click事件打开一个非模态形式,是这样的:

Do While msgbox("Hey thanks for using my Kick-ass," & Vbcrlf & _ 
" better then you ever thought possible program",vbokonly,"Title of Program here") <> vbok 

'tell you form do colour tiles and any form of magic you want here 

next 

Vbok,就是由MSGBOX返回。