2

Excel シートを保存するために、フォームに [名前を付けて保存] ダイアログがあります。ダイアログ ボックスでキャンセルをクリックすると、「Book1 に加えた変更を保存しますか?」という別のメッセージ ボックスが表示されます。ユーザーが [キャンセル] をクリックして Excel を保存しないことを既に決定しているため、このメッセージ ボックスを削除したいと考えています...助けてください..ありがとう...

         Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
    Dim xlApp As Microsoft.Office.Interop.Excel.Application
    Dim xlWorkBook As Microsoft.Office.Interop.Excel.Workbook
    Dim xlWorkSheet As Microsoft.Office.Interop.Excel.Worksheet
    Dim misValue As Object = System.Reflection.Missing.Value

    Dim myArray(DataGridView1.Rows.Count - 1, DataGridView1.Columns.Count - 1) As Object

    Dim r As Integer
    Dim c As Integer

    xlApp = New Microsoft.Office.Interop.Excel.ApplicationClass
    xlWorkBook = xlApp.Workbooks.Add(misValue)
    xlWorkSheet = CType(xlWorkBook.Worksheets.Item("sheet1"), Microsoft.Office.Interop.Excel.Worksheet)
                                                                                                                 For r = 0 To DataGridView1.Rows.Count - 1
        For c = 0 To DataGridView1.Columns.Count - 1
            myArray(r, c) = DataGridView1.Rows(r).Cells(c).Value
        Next cc 
       xlWorkSheet.Range("A1").Resize(DataGridView1.Rows.Count, DataGridView1.Columns.Count).Value = myArray
      Dim saveFileDialog As New SaveFileDialog()
    saveFileDialog.Filter = "Excel files (*.xlsx)|*.xlsx|All files (*.*)|*.*"
    saveFileDialog.FilterIndex = 2
    saveFileDialog.RestoreDirectory = True

    If saveFileDialog.ShowDialog() = DialogResult.OK Then
        xlWorkSheet.SaveAs(saveFileDialog.FileName)
        MsgBox(" Your file has been saved")

    End If


    xlWorkBook.Close()
    xlApp.Quit()
    xlApp = Nothing
    xlWorkBook = Nothing
    xlWorkSheet = Nothing                                                                                            
 End Sub
4

2 に答える 2

1

ダイアログを表示しない場合は、false を指定して close メソッドを呼び出します。

xlWorkBook.Close(False)

MSDN の詳細

于 2013-07-31T12:27:12.967 に答える
0

終了する前にこれを試してください:

xlApp.DisplayAlerts = False

または、False値を close メソッドに渡します。

xlWorkBook.Close(False)
于 2013-07-31T12:24:00.350 に答える