|
▼こう さん:
>#別に「!!」って付けなくても....^_^;
>
>sakuさん,こんにちわ。
>>auto_openで開いた時にモジュールを
>>処理の最後に削除する事出来るでしょうか?
>
>実際にSubやFunctionプロシージャを削除するコードです。
>(sheet1に記述しているhogehogeプロシージャを削除します)
>
> Wシート = "sheet1"
> W処理名 = "hogehoge"
> With Application.VBE.ActiveVBProject
> StartLine = .VBComponents(Wシート).CodeModule.ProcStartLine(W処理名, vbext_pk_Proc)
> CntLine = .VBComponents(Wシート).CodeModule.ProcCountLines(W処理名, vbext_pk_Proc)
> If StartLine > 0 Then
> For i = StartLine To StartLine + CntLine - 1
> .VBComponents(Wシート).CodeModule.DeleteLines StartLine
> Next i
> End If
> End With
>
>
>>再度ファイルを開く場合などにマクロが走らない
>>ようにしたいのです?
>単にコードを実行させたくないのであれば「Exit Sub」をプロシージャの
>先頭に埋め込む方法もあります。こちらは,InsertLinesメソッドですね。
ありがとうございます。
でも、コードを見てもヘルプをかけても今ひとつ分からずに
いるのですが、もうちょっと教えて頂けたらありがたいです。
現在、"Sheet1""Shee2"のシートと"Module1"のモジュール
があり、aute_openで実行して処理が終わる前に、"Sheet2"
"Module1"を削除しようとしているのですが、上記のコード
どのようにすればよいのでしょうか?
|
|