投稿者 ソッケル  (社会人) 投稿日時 2017/8/1 15:17:22
教えていただいた内容と違うやり方で解決できたのですが、新たに疑問が出てきたので質問させてください。


    '消去ボタン
    Private Sub Button3_Click(sender As Object, e As EventArgs) Handles btn_Delete.Click
        Dim conn As New MySqlConnection(Module1.SQL)
        Dim table As New DataTable
        
        Try

            'DB接続 
            conn.Open()
            Dim delete As String = "DELETE FROM T_ITEM WHERE NUMBER =  '" & DataGridView1.CurrentRow.Cells("注文番号").Value & "'"
            Dim mycomand As New MySqlCommand(delete, conn)

            Dim result As DialogResult = MessageBox.Show("消去してもよろしいですか?", _
                                                         "質問", _
                                                         MessageBoxButtons.YesNo, _
                                                         MessageBoxIcon.Exclamation, _
                                                         MessageBoxDefaultButton.Button2)

            '何が選択されたか調べる 
            If result = DialogResult.Yes Then
                '「はい」が選択された場合
                DataGridView1.Rows.RemoveAt(DataGridView1.CurrentCell.RowIndex)
                mycomand.ExecuteNonQuery()
            End If

            '合計の表示
            sum()

        Catch ex As Exception
            MsgBox(ex.Message)
        Finally
            '閉じる
            conn.Close()
        End Try

    End Sub

これで選択した行を削除できるようになったのですが、複数行選択された状態で削除ボタンが押下された場合、1行しか削除されませんでした。
複数行でも削除できるようにするにはfor文などを使用するのが正しいですか?