No.2ベストアンサー
- 回答日時:
ん~、
System.GC.Collect()
がうまく機能していないんでしょうかねぇ。
ちなみに、当方はWinXP + Excel2000の環境ですが、上記の1行を実行すれば、正常にExcelプロセスが開放されます。
……あ、そっか、
他のbookHogeとかshtHogeとかの変数も、Nothingしてやってください。
**********
'保存して閉じる
bookHoge.save()
bookHoge.close()
shtHoge = Nothing
bookHoge = Nothing
xlApp.quit()
xlApp = Nothing
**********
ココに書き込むときにソースコードを修正したんですが、そのときに抜けちゃったんでしょうかねぇ。
返答ありがとうございます!!!
うまくいきました!!!
助かりました。
もうし遅れましたが、環境は、
WinXp proとOfficeXP Excelです。
No.1
- 回答日時:
ん~と、こんな感じです。
Private Sub Button9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button9.Click
Dim xlApp As System.Object
Dim bookHoge As System.Object
Dim shtHoge As System.Object
'Excelアプリケーションオブジェクトを生成
xlApp = CreateObject("Excel.Application")
'ワークブック開く
bookHoge = xlApp.Workbooks.Open("C:\hoge.xls")
'ワークシートの操作
shtHoge = bookHoge.worksheets("SheetHoge")
shtHoge.range("A3").value = "あああ"
shtHoge.range("D2").value = 1
'保存して閉じる
bookHoge.save()
bookHoge.close()
xlApp.quit()
xlApp = Nothing
'※ .net では、Nothingしてもメモリが開放されないことに注意。
'ここでは強制的にガベージコレクタを起動することにより、xlAppを開放して、
'ワークブックの排他制御を止めさせる。
System.GC.Collect()
End Sub
返答ありがとうございます。
うまくExcelシートが作れるようになりました。
その出力したシートをエクスプローラから
起動すると、画面が崩れたような形になります。
それで、Excelを終了し、再度立ち上げると、
うまく起動します。
また、出力後、VB Studio.netを終了し、出力したシートを起動すると、まったく問題なく立ち上がります。
VBのプロセスが、Excelプロセスをつかんだままに
なったままのような気がするのですが。。。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセル 値をコピペした時に、条件付き書式で塗られた背景色もペーストさせる 2 2023/04/05 17:21
- Visual Basic(VBA) ExcelVBAに関する質問 3 2023/02/17 10:47
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/03/27 13:25
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2022/08/04 13:56
- Excel(エクセル) Excleマクロ セル値の代入と文字列の結合について 3 2022/10/05 16:47
- Visual Basic(VBA) Excel-VBAでのファイルの開き方 4 2023/02/14 11:01
- Visual Basic(VBA) 貼り付けた値が消えていく 以下はソースファイルの2番目のシートのB6から最終行を取得 ターゲットファ 2 2023/07/27 12:23
- その他(プログラミング・Web制作) python文字化けエラーが発生しているようです 3 2022/04/13 19:41
- Visual Basic(VBA) VBAコードを張り付け後のエクセルの進め方 2 2023/02/07 18:24
- Visual Basic(VBA) 【ご教示ください】VBAの記述方法がわかりません。 2 2022/08/12 21:28
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
Excelで空白セル直前のセルデー...
-
EXCEL VBA 文中の書式ごと複写...
-
特定の色のついたセルを削除
-
エクセルの合計を自動で表示さ...
-
【VBA】【ユーザーフォーム_Lis...
-
【VBA】写真の貼り付けコードが...
-
Excel VBAでCheckboxの名前を変...
-
VBA にて、条件付き書式で背景...
-
複数指定セルの可視セルのみを...
-
DataGridViewのフォーカス遷移...
-
Excel VBA IF文がうまく動作し...
-
【Excel VBA】一番右端セルまで...
-
VBAでユーザーフォームにセル値...
-
Excel UserForm の表示位置
-
ListBoxを選択したデータ編集② ...
-
エクセルのカーソルを非表示に...
-
複数範囲のCOUNTIF
-
昨日、質問した件『VBA にて、...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
VBAマクロ実行時エラーの修正に...
-
エクセルVBA 配列からセルに「...
-
Excel UserForm の表示位置
-
Excelで空白セル直前のセルデー...
-
EXCEL VBA 文中の書式ごと複写...
-
Excel VBAでCheckboxの名前を変...
-
【Excel VBA】一番右端セルまで...
-
入力規則のリスト選択
-
下記のマクロの説明(意味)を...
-
【VBA】【ユーザーフォーム_Lis...
-
特定の色のついたセルを削除
-
関数の引数でrangeを指定したとき
-
VBA:日付を配列に入れ別セルに...
-
【VBA】写真の貼り付けコードが...
-
DataGridViewで指定したセルの...
-
VBA にて、条件付き書式で背景...
-
Excel VBA IF文がうまく動作し...
-
excelで結合セルの場合にエラー...
-
DataGridViewでグリッド内に線...
-
昨日、質問した件『VBA にて、...
おすすめ情報