|
一応の回避方法です。
>Excel2000(Sp-3)で
>現象を確認しました。
>
>再現手順は、
>新規ブックの最左端ワークシートに「コントロールツールボックス」のコマンドボタンを
>ひとつ貼り付けて下さい。
>当該シートのシートモジュールに
>上記ボタンのクリックイベントプロシジャーを
>
>'============================================
>Private Sub CommandButton1_Click()
> MsgBox "ok"
>End Sub
>
>
>等と記述して下さい。
>
>
>これでシートの準備はOK・・・。
>
>問題のコードを標準モジュールに
>'===========================================================
>Sub copytest()
> Set bk = Workbooks.Add
> ThisWorkbook.Worksheets(1).Copy before:=bk.Worksheets(1)
> Call 削除処理(bk)
> bk.SaveAs "D:\My Documents\TESTエリア\vbprotest4.xls"
>' 適当な名前で保存する
>End Sub
>'=====================================================================
>Sub 削除処理(bk)
> With bk.VBProject
>
> For Each VBC In .VBComponents
> Select Case VBC.Type
> Case 1, 2, 3
> .VBComponents.Remove VBC
> Case 100
> With VBC.CodeModule
> .Deletelines 1, .Countoflines
> End With
> End Select
> Next
> End With
bk.Worksheets(1).OLEObjects(bk.Worksheets(1).OLEObjects.Count).Delete
>End Sub
問題のボタンコントロールの削除をVbprojectの処理の後に実行するとOKでした。
|
|