作者qscgy4 (菜逼八)
看板Visual_Basic
标题[VBA ] 如何强制显示 Debug.Print?
时间Tue Nov 10 09:14:28 2020
各位高手,安安
最近本鲁写了一个简单的 VBA 程式,
因为要判断的东西比较多,
所以回圈大约有4层,
为了确定回圈目前进度,
我在最外层的回圈中加了 Debug.Print,
来显示回圈中的资讯,
可是我发现只能显示前几次的 Debug.Print,
接下来 excel 就像当机一样,但是实际上没有当机,
等30~60min回圈跑完就正常了,
即时视窗的东西也都会显示出来。
所以我的问题是,
如何 强制即时视窗显示内容,
谢谢。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.132.68.97 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Visual_Basic/M.1604970870.A.ECD.html
1F:→ MOONRAKER: 难 你拉个textbox然後一直附加字串可能还比较有效 11/10 10:52
2F:→ MOONRAKER: 起码那还可以用doevents逼他更新 11/10 10:53
3F:推 ClubT: 写到记事本,虽然要一直开记事本来看比较麻烦就是了 11/11 14:40
4F:→ newacc: 如果加个sleep或wait不知道有没有帮助? 11/12 01:46
5F:推 fumizuki: DoEvents 治百病...把执行权暂时还给Excel 11/12 22:56
6F:→ fumizuki: Excel才有机会更新画面 11/12 22:56
7F:→ fumizuki: 不然就是一直忙着你回圈中的所有工作 11/12 22:57
8F:→ fumizuki: 没时间显示视窗的新内容 11/12 22:57
9F:→ fumizuki: 但要注意 DoEvents 的次数越多,回圈执行时间就越长 11/12 22:58
10F:→ fumizuki: 可以另外用一个变数去接 Timer() 函数传回值 11/12 22:59
11F:→ fumizuki: 判断目前Timer值与上次值的差异 11/12 22:59
12F:→ fumizuki: 决定多久执行一次 DoEvents 11/12 23:00