我希望能够将代码添加到新创建的工作表中。下面的代码块会这样做,但如果Visual Basic编辑器未打开,则会给出错误(指向下面代码的第一行)。并且,如果它在后台打开,它将在宏完成运行后激活VB编辑器窗口。
With wb.VBProject.VBComponents(wb.Worksheets(newSheetName).CodeName).CodeModule
.InsertLines Line:=.CreateEventProc("FollowHyperlink", "Worksheet") + 1, _
String:=vbCrLf & _
"Call FindAllInSheet(Target.Range.Text, Range(Cells(2, 2),Cells(" & num_triple_combos + 1 & ", " & start_triples_col + 1 & ")))"
End With
有没有办法避免这种行为?
答案 0 :(得分:0)
目前,我所做的工作是用
包围我的代码Application.VBE.MainWindow.Visible = True
...
Application.VBE.MainWindow.Visible = False
现在唯一的问题是,在将代码添加到指定工作表之前,宏将遍历每个现有工作表。我不确定为什么。
我的主要来源:http://www.mrexcel.com/forum/excel-questions/31259-macro-call-visual-basic-editor.html