投稿者 さらたん  (社会人) 投稿日時 2013/3/17 01:38:20
はじめまして、始めたばかりの初心者です。
Visual Basic 2010 Expressで作ってます。

EXCELにデータ保存をしようと色々なサイトを見ながら作りました。
 一応、EXCELに書き込み保存は出来ましたが、プロセスにEXCELが残ってしまいます。
 解放で調べながら色々試しましたがうまくいきません。

どう直せばいいのでしょうか?
どなたか教えてください。

また、【使用するデータの最終行を決める】のあたりの書き方は合っているのでしょうか?


Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
         Dim xlApp As Excel.Application
         Dim xlBook As Excel.Workbook
         Dim xlsheet As Excel.Worksheet
         Dim xlRng As Integer
         Dim xlsCell As Excel.Range
         Dim Nob As String

             xlApp = CreateObject("Excel.Application")
             xlBook = xlApp.Workbooks.Open("D:\Documents\AAAA.xls")
             xlsheet = xlBook.Worksheets(1)

             xlsCell = xlsheet.Cells

             '使用するデータの最終行を決める()
             xlRng = CType(xlsCell(xlsCell.Rows.Count, 1), Range).End(XlDirection.xlUp).Row + 1
             Nob = CType(xlsCell(xlsCell.Rows.Count, 1), Range).End(XlDirection.xlUp).Value

             xlsheet.Cells(xlRng, 1).Value = Nob + 1
             xlsheet.Cells(xlRng, 2).Value = ComboBox2.Text '年代
            xlsheet.Cells(xlRng, 3).Value = ComboBox1.Text '問合せ項目
            xlsheet.Cells(xlRng, 4).Value = TextBox1.Text '問合せ内容
            If RadioButton1.Checked = True Then
                 xlsheet.Cells(xlRng, 5).Value = "男性"
             ElseIf RadioButton2.Checked = True Then
                 xlsheet.Cells(xlRng, 5).Value = "女性"
             End If
             xlsheet.Cells(xlRng, 6).Value = Label8.Text
             xlsheet.Cells(xlRng, 7).Value = Label2.Text

             On Error Resume Next
             xlApp.DisplayAlerts = False
             xlsheet.SaveAs("D:\Documents\AAAA.xls")

             xlApp.Quit()

             System.Runtime.InteropServices.Marshal.ReleaseComObject(xlRng)
             System.Runtime.InteropServices.Marshal.ReleaseComObject(xlsCell)
             System.Runtime.InteropServices.Marshal.ReleaseComObject(xlsheet)
             System.Runtime.InteropServices.Marshal.ReleaseComObject(xlBook)
             System.Runtime.InteropServices.Marshal.ReleaseComObject(xlApp)
       
   End Sub