2016-03-31 1 views
1
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 

あるモジュールから別のモジュールにいくつかのコードを挿入しています。 ここで私はABCxとして追加された私のサブ名をABCshowSheetのようにしたいと思いますが、二重引用符の中のS変数のためABCxとして来ています。ABCshowSheetの代わりに私は変数の値それは二重引用符二重引用符で置換する変数値を代入する

+0

コードをインデントしていません! – Jeeped

答えて

0
文字列置換で問題としてそれを

考えるであるにもかかわらず:

S = Replace(S,"ABCx", "ABC" & x) 

コードが後である場合、私はそれを潜在的なバグを防ぐために(代わりに、シンプルなReplace(S,"x",x)の)このような方法をとっています記号xが文字列の別の文脈に現れるように修正されました。 ()の前にSのスペースがある理由がわかりません。ABCx()です。

+0

こんにちはジョン、助けてくれてありがとう。申し訳ありませんが、私の入力ミスです。 – surendra

関連する問題