通过一个消息框继续代码
嘿伙计们看下面的代码'---------------------------------------------------------------------------------------
'模块:Module3_get_excell_files
'日期时间:11/23/2012 15:05
'作者:标记
'目的:此模块获取新创建的当前项目所需的Excel文件
---------------------------------------------------------------------------------------
选项显式
子gtc_move_Excell()
''Declare Varibles
Dim sSourceDir As String As String
Dim sBackDir As String
Dim sNextFile As String
Dim sDriveLetter As String
Dim currpath As String
Dim ws As
String'Dim gtcprojnum As Double
On Error GoTo FileCopyError
'更改为 Excel Data 以准备文件移动....
sSourceDir = “V:\gtc_proj\Excel_Data\”
sDriveLetter = Left$(CurDir$(), 1)
currpath = CurDir$()
sBackDir = gtcprojnum 'Global Varible set in Module 1
sNextFile = Dir$(sSourceDir & “*.XLS”)
而 sNextFile“”
FileCopy sSourceDir & sNextFile, sBackDir & sNextFile
sNextFile = Dir$
Wend
MsgBox“Excel Files W/Prefix 已到位。在数据提取文件...” (这是我想继续的地方,而用户不必点击OK)这可能吗?
任何帮助赞赏!
**** Hidden Message ***** MsgBox是一个模态对话框,因此在显示时会停止当前的执行。
但是,也有解决方案,例如对话框超时,就好像用户在超时后确实按了按钮一样(不确定它在AutoCAD vba中是否可用),但是,您可以创建和使用无模式窗体。
向项目中添加一个新窗体,并使其大小与msgbox对话框差不多。
将所需的标签和按钮放在表单上,按您喜欢的方式进行设计。您可以添加图像以在msgbox上实现相同的外观。
在您的代码中,设置标签值、标题等。说出您想要的,然后创建一个新表单,即代码0]
只要您想在代码执行期间隐藏窗体,只需调用NewForm。Hide
如果在一个函数中创建窗体,而变量超出了范围,您将无法使用变量名关闭它,因此您可能需要创建一个保存消息窗体的属性。例如:
Private _Myform as Userform
_Myform = New MyMsgBoxForm
Property Get MessageBox() As MyMsgBoxForm
set MessageBox = _Myform
End Property
现在您可以调用MessageBox来完成这项工作。
With MessageBox
'do stuff here
End With
当然,我已经好几年没有摆弄vba了,所以我不能保证VBA库中没有变化,也不能保证我的语法是正确的...但是这个想法应该对你有用。
页:
[1]