質問: true 下記で追加できると思うのですが、()内にセットするパラメータが わかりません・・・ xlbook.worksheets.copy() どなたかご存知の方がいらっしゃいましたら教えて下さい。 よろしくお願いします。
回答: 先に回答された方の回答で機能すると思います vb.netでcomを扱う場合マーシャリングに気を使わないといけません 暗黙的に参照されるオブジェクトの開放を怠るとアプリケーションが裏で動いた状態になってしまう恐れがあります 今回の場合ですと xlwb.worksheets("a").copy(before:=xlwb.worksheets(3)) のxlwb.worksheets("a") や xlwb.worksheets(3) などがそれにあたります xlwb.worksheets("a")やxlwb.worksheets(3)をworksheet型の変数を用意してこちらに代入してから copyメソッド実行しましょう dim wsa, ws3 as excel.worksheet wsa = xlwb.worksheets("a") ws3 = xlwb.worksheets(3) wsa.copy( before:= ws3 ) marshal.releasecomobject( wsa ) marshal.releasecomobject( ws3 ) wsa = nothing ws3 = nothing といった具合に使い終わったら marshal.releasecomobject を実行しましょう cellsやrangeで参照するrangeオブジェクトなどにも気をつけましょう