首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >防止VBE编辑器窗口闪烁

防止VBE编辑器窗口闪烁
EN

Stack Overflow用户
提问于 2014-11-09 03:47:18
回答 1查看 221关注 0票数 1

有关于这方面的帖子,但似乎我做错了什么,因为窗口仍然闪烁。下面是我代码的相关部分:

代码语言:javascript
复制
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hWndLock As Long) As Long
Private Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal ClassName As String, ByVal WindowName As String) As Long
170   oExcel.VBE.MainWindow.Visible = False
180   VBEHwnd = FindWindow("wndclass_desked_gsk", oExcel.VBE.MainWindow.Caption)
190   If VBEHwnd Then LockWindowUpdate VBEHwnd
200   With MB.VBProject.VBComponents(MB.Worksheets(sht.Name).CodeName).CodeModule
210       .InsertLines Line:=.CreateEventProc("Click", printbut.Name) + 1, String:=vbCrLf & "Call Sheet4.printbutton"
220   End With
230   oExcel.VBE.MainWindow.Visible = False
240   LockWindowUpdate 0&

我做错了什么?(代码是基于CPearson的代码)。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-11-17 13:20:55

我什么都试过了,但都没能成功。因此,我最后使用的另一个选项(不可取)是:

代码语言:javascript
复制
170   oExcel.VBE.mainwindow.Visible = False
180   curPos = oExcel.VBE.mainwindow.Left
190   oExcel.VBE.mainwindow.Left = 10000
200   With MB.VBProject.VBComponents(MB.Worksheets(sht.Name).CodeName).CodeModule
210       .InsertLines Line:=.CreateEventProc("Click", printbut.Name) + 1, String:=vbCrLf & "Call Sheet4.printbutton"
220   End With
230   oExcel.VBE.mainwindow.Visible = False
240   oExcel.VBE.mainwindow.Left = curPos
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26824782

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档