Hi,
there is a much more cleaner, faster and easier way to import Excel to DataSet.
With GemBox.Spreadsheet Excel C# component this is all the code you need:
var ef = new ExcelFile();
ef.LoadXls(@"c:\xlfile.xls");
// DataSet schema has to be defined before this.
for(int i = 0; i < ef.Worksheets.Count; ++i)
{
var ws = ef.Worksheets[i];
ws.ExtractToDataTable(dataSet.Tables[i], ws.Rows.Count, ExtractDataOptions.StopAtFirstEmptyRow, ws.Rows[0], ws.Columns[0]);
}