Advertisement
Guest User

Untitled

a guest
Jun 17th, 2019
57
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. Estaba tratando de importar unos datos de excel e un datagridview con el siguiente codigo. Funciona con los archivos de excel del 97 al 2003. Pero si intento con una versión de documento superior me marca este error en el "foreach (DataTable dt in **result.Tables**)" :
  2. "System.NullReferenceException: 'Referencia a objeto no establecida como instancia de un objeto." Estoy usando exceldatareader version 2.1.2.3 :(
  3. DataSet result;
  4. using (OpenFileDialog ofd = new OpenFileDialog()
  5. { Filter = "Excel Workbook|*.xls;*.xlsx;*.xlsm", ValidateNames = true })
  6. {
  7. ofd.Filter = "Excel Workbook|*.xls;*.xlsx;*.xlsm";
  8. {
  9. if (ofd.ShowDialog() == DialogResult.OK)
  10. {
  11. //Read excel file
  12. FileStream fs = File.Open(ofd.FileName, FileMode.Open, FileAccess.Read);
  13. IExcelDataReader reader = ExcelReaderFactory.CreateBinaryReader(fs);
  14. reader.IsFirstRowAsColumnNames = true;
  15. result = reader.AsDataSet();
  16. comboBox1.Items.Clear();
  17. //Add sheet to combobox
  18. foreach (DataTable dt in result.Tables)
  19. comboBox1.Items.Add(dt.TableName);
  20. reader.Close();
  21. }
  22. }
  23. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement