How can I select specific columns from an excel sheet in C #?

How can I select specific columns from an excel sheet and not all columns

string connectionString = String.Format(@"Provider=Microsoft.ACE.OLEDB.12.0;Data Source={0};Extended Properties=""Excel 8.0;HDR=YES;IMEX=1;""", txtPath.Text); string query = String.Format("select * from [{0}$]", "Sheet1"); OleDbDataAdapter dataAdapter = new OleDbDataAdapter(query, connectionString); DataSet dataSet = new DataSet(); dataAdapter.Fill(dataSet); dataGridView1.DataSource = dataSet.Tables[0]; 
+4
source share
3 answers

What about:

 SELECT * FROM [Sheet1$B14:C20] 

This should select cells B14 to C20 .

+6
source

This will sound trivial, but this is what I understand from your question. Instead of SELECT * use SELECT [columnName1],[columnName2] FROM Sheet1. . Here columnName1 and columnName2 should be the column headers you want to get from Excel Sheet .

+1
source

If you want to select data before filling in, here is a good link in the advanced select statements. If you want to manipulate your mail message populating your DataSet, then here's how:

 DataTable myTable = dataSet.Tables[0]; var myColumn = myTable.Columns["ColumnName"]; 

or

 var myColumn = myTable.Columns[0]; 

To access a single field, it will look something like this.

 var field = myTable.Rows[0][myColumn]; 
0
source

All Articles