Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 使用CodeModule将代码插入新工作表需要打开VB编辑器_Vb.net_Vba_Excel - Fatal编程技术网

Vb.net 使用CodeModule将代码插入新工作表需要打开VB编辑器

Vb.net 使用CodeModule将代码插入新工作表需要打开VB编辑器,vb.net,vba,excel,Vb.net,Vba,Excel,我希望能够将代码添加到新创建的工作表中。下面的代码块就是这样做的,但是如果VisualBasic编辑器未打开,则会给我一个错误(指向下面代码的第一行)。如果在后台打开,则在宏运行完成后,它将激活VB编辑器窗口 With wb.VBProject.VBComponents(wb.Worksheets(newSheetName).CodeName).CodeModule .InsertLines Line:=.CreateEventProc("FollowHyperlink", "Works

我希望能够将代码添加到新创建的工作表中。下面的代码块就是这样做的,但是如果VisualBasic编辑器未打开,则会给我一个错误(指向下面代码的第一行)。如果在后台打开,则在宏运行完成后,它将激活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

有什么方法可以避免这种行为吗?

目前,我所做的工作是用

Application.VBE.MainWindow.Visible = True

...

Application.VBE.MainWindow.Visible = False
现在唯一的问题是,在将代码添加到指定的工作表之前,宏将遍历每个现有工作表。我不知道为什么


我的潜在客户来源:

目前,我所做的工作是用

Application.VBE.MainWindow.Visible = True

...

Application.VBE.MainWindow.Visible = False
现在唯一的问题是,在将代码添加到指定的工作表之前,宏将遍历每个现有工作表。我不知道为什么


我的线索来源:

我在这里发现了一个类似的问题,但在阅读了答案后,我仍然不确定如何根据需要打开和关闭CodePane/CodeModule/VBE(?):我在这里发现了一个类似的问题,但在阅读了答案后,我仍然不确定如何根据需要打开和关闭CodePane/CodeModule/VBE(?):