Jump to content

[Resolvido] Erro ao importar Planilha Excel para DataGridView


Zamparo

Recommended Posts

Olá estou com um problema ao importar planilhas do Excel, ele só está importando algumas planilhas em outras fala que não está no formato esperado e em outras fala que o 'Sheet1$' não é um nome válido.

Sou iniciante e não consegui achar a cousa do erro segue parte do código abaixo onde apresenta o erro.

Desde já agradeço...

private void button3_Click(object sender, EventArgs e)
 {
	 ofd.Filter = "Arquivo Excel (.xls.xlsx)|*.xls;*.xlsx|Todos os Arquivos|*.*";
	 if (ofd.ShowDialog() == DialogResult.OK)
	 {
		 /*TxBoxArquivo.Text = ofd.FileName;
		 string constr = "Provider = MicroSoft.Jet.OLEDB.4.0; Data Source="+ TxBoxArquivo.Text +"; Extended Properties =\"Excel 8.0; HDR=yes;\";";
		 OleDbConnection conn = new OleDbConnection(constr);
		 OleDbDataAdapter sda = new OleDbDataAdapter("Select * From [sheet1$]",conn);
		 DataTable dt = new DataTable();
		 sda.Fill(dt);
		 CargTab.DataSource = dt;*/
			 // Define Caminho completo para ficheiro em STRING.
			 string path = System.IO.Path.GetFullPath(ofd.FileName);
			 // Define pedido a fazer em forma de STRING.
			 string query = "SELECT * FROM [sheet1$]";
		 // Define ligação como nova ligação OleDB.
		 OleDbConnection conn = new OleDbConnection();
		 // Define linha de comunicação com todos os dados recuperados até aqui.
		 conn.ConnectionString = @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + ofd.FileName + ";Extended Properties= \"Excel 12.0 Xml;HDR=YES;IMEX=1\";";
		 // Define adaptador para pedido "query" (tipo string) ao adaptador que comunica com o ficheiro excel através da ligação CONN definida anteriormente.
		 OleDbDataAdapter adapter = new OleDbDataAdapter(query, conn);
		 DataSet dataSet = new DataSet();
		 adapter.Fill(dataSet, "[sheet1$]");
		 CargTab.DataSource = dataSet.Tables[0];
	 }
else{
MessageBox.Show("Erro ao encontrar arquivo!!!!!");
}
}

Edited by Zamparo
Link to comment
Share on other sites

  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.