質問
VB.NETで既存Excel worksheetを操作する方法
- 投稿日時:2004/02/27 09:55
VB.net、office XPのexcelを使用しています。
既存のexcelのworkbookのworksheetの特定のセルに、
値を代入してsaveする方法について、
ご存知の方、教えてください。
新規のworkbookのsheet1になら、値を入れることは
できるのですが、既存workbookのworksheetに
する方法がわかりません。
よろしくお願いいたします。
回答 (2件)
- 最新から表示
- 回答順に表示
- ベストアンサーのみ表示
No.2ベストアンサー20pt
- 回答日時:2004/02/29 03:39
ん~、
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
- 回答日時:2004/02/28 05:26
ん~と、こんな感じです。
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を見た人はこんなQ&Aも見ています
- VB.net2003のエクセルからデータを取得したいのですが・・・
- VB.net Double と Decimal の違い?
- SQLserverでのUPDATE文について
- CloseとDisposeの違い
- .NET上でエクセル上に罫線を引く
- vb.netからエクセル関数書き込み
- VB.netでのExcelデータの読み込み
- TextBoxに半角数字のみの入力しかできないようにしたい
- VB.NETによるEXCELの行挿入
- VB2010Express で、Excelのcellデータをコピーする
- Functionの戻り値を配列にしたいのですが
- DataGridViewで、選択した行の値を取得したい。
- データセットのレコード更新がしたい
- 構造体の定義の仕方
- Excelファイルの操作
関連するQ&A
このカテゴリで人気のQ&Aランキング
- 4文字列を含まないという正規表現は?
- 5エクセル(Excel) ワイルドカード *...
- 6コレクションの数値をSortで並び替える
- 7VBAで別エクセルファイルから指定エ...
- 8VBAにて新規ブックへ既存シート...
- 9Functionの戻り値を配列にしたいの...
- 10VBA マクロ実行時エラー 1004
- 11VBA初心者の勉強法とお勧めの書籍
- 12Excel VBA シート名をすべて取得し...
- 13複数セル参照で塗りつぶしを変更する
- 14VB上で実行中の無限ループの止め方
- 15定数配列の書き方
- 16スマホアプリ LINEについて
- 17TextBoxに半角数字のみの入力しかで...
- 18VB.NETのコンボボックスについて
- 19VBAで選択セルの判定について
- 20VB2008 外部アプリケーションが起動...