Dim CodePan As VBIDE.CodeModule
Dim S As String
Dim x As String
x = showSheet
Set CodePan = ThisWorkbook.VBProject.VBComponents("Module2").CodeModule
S = _
"Sub ABCx ()" & vbNewLine & _
" MsgBox ""Hello World"",vbOkOnly" & vbNewLine & _
"End Sub" & vbNewLine
With CodePan
.InsertLines .CountOfLines + 1, S
End With
我在一个模块的其他模块中插入了一些代码。 在这里,我有一个问题,我希望我的子名称为ABCshowSheet,因为我添加为ABCx,但由于双引号中的S变量,它将作为ABCx而不是ABCshowSheet,有任何方式我可以替换变量的值甚至虽然它是双引号
答案 0 :(得分:0)
将其视为字符串替换中的问题:
S = Replace(S,"ABCx", "ABC" & x)
我是这样做的(而不是简单的Replace(S,"x",x)
)来防止潜在的错误,如果稍后修改代码,使得符号x
出现在字符串的另一个上下文中。我不确定为什么S
中()
之前的ABCx ()
中有空格。