Visual Basic 中学校 掲示板 投稿の管理
タグのない投稿を抽出
統計
RSS
Visual Basic 中学校
投稿一覧
Excelのプロセスが消えない
この投稿へのリンク
https://keijiban.umayadia.com/ThreadDetail.aspx?ThreadId=241#CommentId1713
この投稿の削除
削除パスワード
削除する
コメント本文
投稿者
たらちゃん
 (社会人)
投稿日時
2009/1/18 05:37:27
お世話になります。
VB.netで以下のような流れのプログラムを作成しました。
1.csvファイルをデータセットに格納し、データグリッドに表示
2.データグリッドに表示したデータをExcelに出力
しかしExcelへの出力が完了してもExcelのプロセスが残ったままです。
このHPにあるVB6テクニックで解説してある「消えないExcelのプロセス」の箇所も読み、
その通りにExcelアプリケーションは終了しているはずなのですが・・・
どなたか原因をご教示いただけると幸いです。
※以下に参考までにコードの一部を抜粋します
(oledvはcsvファイルから読み込んだデータセットから生成したデータビューです。またExcelを
参照設定しています。)
'-------------
'Excelに接続
'-------------
Dim xlApp As Excel.Application
Dim xlBook As Excel.Workbook
Dim xlSheet As Excel.Worksheet
'Excelの起動
xlApp = CreateObject("Excel.application")
'新規Excelファイルを作成する
xlBook = xlApp.Workbooks.Add
'データを出力するワークシートをSheet1にする
xlSheet = xlBook.Worksheets(1)
'Excelを非表示にする
xlApp.Visible = False
'-------------------------
'DataSet抽出結果を出力する
'-------------------------
Me.ProgressBar1.Minimum = 0
Me.ProgressBar1.Maximum = oledv.Count - 1
Dim i As Integer
For i = 0 To oledv.Count - 1
xlSheet.Cells(i + 1, 1).value = "会社名"
xlSheet.Cells(i + 1, 2).value = "住所"
xlSheet.Cells(i + 1, 3).value = "県名"
xlSheet.Cells(i + 2, 1).value = oledv(i)(1) '会社名
xlSheet.Cells(i + 2, 2).value = oledv(i)(5) '住所
xlSheet.Cells(i + 2, 3).value = oledv(i)(10) '県
Me.ProgressBar1.Value = i
Next
xlBook.SaveAs(Microsoft.VisualBasic.Left(myfilepath, Len(myfilepath) - 4) & "_修正")
xlBook.Close()
xlApp.Quit()
xlSheet = Nothing
xlBook = Nothing
xlApp = Nothing
'処理終了メッセージ
MsgBox("ファイルの加工を終了しました")
Me.ProgressBar1.Value = 0
End Sub