DESCOBRIR O NOME DE UMA ABA NO EXCEL.

THIAGO.CC 18/07/2013 16:32:35
#426264
Boa Tarde Pessoal,

Como descobrir o nome de uma aba do excel?

Estou usando o seguinte código:

Citação:

[txt-size=5]
OleDbConnection conexao = new OleDbConnection(@[Ô]Provider=Microsoft.ACE.OLEDB.12.0; Data Source= [Ô] + stCaminho + [Ô];Extended Properties=[ô]Excel 12.0 Xml;HDR=NO[ô];[Ô]);

OleDbDataAdapter adapter = new OleDbDataAdapter([Ô]SELECT * FROM [Plan1$][Ô], conexao);[/txt-size]



Até ai está funcionando corretamente, o que eu quero saber como eu faço para alterar o nome [Plan1$] na consulta e deixar dinâmico, posso colocar qualquer nome na aba das planilhas.
ASHKATCHUP 18/07/2013 18:51:48
#426271
Resposta escolhida
Achei no google. Eh VB.NET mas tu pode alterar,


Dim dtSheetnames As DataTable = oleDBExcelConnection.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, New Object() {Nothing, Nothing, Nothing, [Ô]TABLE[Ô]})
Dim FirstSheetName As String = dtSheetnames.Rows(0)!TABLE_NAME.ToString
THIAGO.CC 19/07/2013 09:25:11
#426281
Obrigado pelo sugestão. Eu realizei algumas alterações no código e funcionou perfeitamente.

Segue o código alterado para quem estiver o mesmo problema.

Citação:

OleDbConnection conexao = new OleDbConnection(@[Ô]Provider=Microsoft.ACE.OLEDB.12.0; Data Source= [Ô] + stCaminho + [Ô];Extended Properties=[ô]Excel 12.0 Xml;HDR=NO[ô];[Ô]);

conexao.Open();

DataTable dt = conexao.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, [Ô]TABLE[Ô] });

OleDbDataAdapter adapter = new OleDbDataAdapter([Ô]SELECT * FROM [[Ô] + dt.Rows[0][[Ô]Table_Name[Ô]].ToString() + [Ô]][Ô], conexao);

DataSet ds = new DataSet();

Tópico encerrado , respostas não são mais permitidas