title: Add letters to DataTable in a column with only numeric values
body: <p><strong>Question:</strong></p>
  
  <blockquote>
    <p>How can I allow a column in a DataTable to contain either 'just numeric values' or 'just letters'</p>
  </blockquote>
  
  <p>So I'm building a small database/catalogue program for movies and naturally I want to include regions for different formats (for example DVD regions 1,2,3,4,0 and Blu-ray regions A,B,C,ABC)</p>
  
  <p>The problem I'm getting is when I try to add Blu-ray regions to the column containing the DVD regions.</p>
  
  <p><strong>Error message:</strong></p>
  
  <p><a href="https://i.stack.imgur.com/dw2Va.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/dw2Va.jpg" alt="error message"></a></p>
  
  <p>A quick overview so it can be understood better:</p>
  
  <p><strong>Add form:</strong></p>
  
  <p><a href="https://i.stack.imgur.com/imkUc.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/imkUc.jpg" alt="add form"></a></p>
  
  <p><strong>DataGridView:</strong></p>
  
  <p><a href="https://i.stack.imgur.com/hU238.jpg" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/hU238.jpg" alt="datagridview"></a></p>
  
  <p><strong>Code:</strong></p>
  
  <p>Note this works perfectly fine except when region contains letters.</p>
  
  <pre><code>Dim data As New DataTable()
  </code></pre>
  
  <p>This subroutine is called from another form and the variables are all declared as <code>Public X As String</code> inside a module:</p>
  
  <pre><code>Public Sub Addmovie()
      data.Rows.Add(AID, AShelf, ARow, ATitle, ADirector, ACountry, ALabel, AFormat, ARegion)
      DataGridView1.DataSource = data
  End Sub
  </code></pre>
  
  <p>Initial datatable filling:</p>
  
  <pre><code>Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
          Dim name As [String] = "Sheet1"
          Dim constr As [String] = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + My.Settings.MSdbactive + ";Extended Properties='Excel 8.0;HDR=YES;';"
  
          Dim con As New OleDb.OleDbConnection(constr)
          Dim oconn As New OleDbCommand("Select * From [" + name + "$]", con)
          con.Open()
  
          Dim sda As New OleDbDataAdapter(oconn)
          sda.Fill(data)
  
          DataGridView1.DataSource = data
  
  End Sub
  </code></pre>