Private Sub DataGridView1_CellValidating(sender As Object, e As DataGridViewCellValidatingEventArgs) Handles DataGridView1.CellValidating ''0列目は Long 値を必須とする。Long 値にできない文字列が入力されたら拒絶。 'If e.ColumnIndex = 0 AndAlso e.RowIndex >= 0 Then ' Dim n As Long = 0 ' If Not Long.TryParse(e.FormattedValue, n) Then ' e.Cancel = Me.DataGridView1.NewRowIndex <> e.RowIndex ' End If 'End If End Sub Private Sub DataGridView1_CellValidated(sender As Object, e As DataGridViewCellEventArgs) Handles DataGridView1.CellValidated '0列目の値が Long 型でなかった場合は、Long 値に変換する。 If e.ColumnIndex = 0 AndAlso e.RowIndex >= 0 Then Dim v = Me.DataGridView1(0, e.RowIndex).Value If TypeOf v IsNot Long Then Dim n As Long = 0 If Long.TryParse(v?.ToString(), n) Then Me.DataGridView1(0, e.RowIndex).Value = n Else 'Me.DataGridView1(0, e.RowIndex).Value = DBNull.Value End If End If End If End Sub