Excel - Navegando pela Planilha e Exportando a Planilha para um Banco de dados


Vamos mostrar aqui como abrir uma planilha do Excel e Navegar pelas células da pasta de trabalho; depois veremos como exportar esta mesma Planilha para uma tabela em um banco de dados do Access.

1-) Abrindo uma Planilha do Excel e Navegando pelas células

Vamos criar uma planilha no Excel (tem que ser uma versão superior a 4.0) com os seguintes dados:

Nossa planilha terá uma pasta de trabalho com o nome de teste e vamos salvar a planilha com o nome de teste.xls no diretório c:\teste.

Inicie um novo projeto no VB e no formulário padrão insira 5 Labels , uma para cada cabeçalho da planilha ( nome,endereço, cidade, estado, telefone) , insira também 5 controles TextBox para exibir os dados relativos aos cabeçalhos e um controle DataControl. No final , seu formulário deverá ter a seguinte aparência :

- Vamos configurar o controle Data Control. Clique no controle e pressione F4. Configure a propriedade DatabaseName informando nela o caminho e nome da planilha a qual desejamos abrir: c:\teste\teste.xls e na propriedade Caption informe - "Conectado com => C:\teste\teste.xls". Devemos ter o seguinte:

Com isto estamos fornecendo a fonte de dados que queremos exibir.

- Agora para cada controle TextBox vamos configurar duas propriedades :

A figura abaixo ilustra o caso para exibir o conteúdo do cabeçalho Nome da Planilha teste.xls.

-Ao executar o Projeto vamos obter o seguinte:

Para navegar pelo contéudo da Planilha basta clicar nos botões do Controle de Dados. E é só isso. Sem nenhum código ; mais simples impossível.

1-) Exportando a Planilha para uma tabela em um Banco de dados Access

Vamos agora exporta a planilha texte.xls para um banco de dados Access. Para isto vamos usar uma função que deverá receber os seguintes parâmetros:

  1. Nome da pasta de Trabalho
  2. O caminho e o nome da Planilha
  3. O nome da tabela que será criada
  4. O caminho e o nome do banco de dados

A seguir damos o código da função que você poderá inserir em um formulário ou módulo:

Private Sub ExportaExcel(NomePasta As String, CaminhoPlanilha As _
    String, NomeTabela As String, CaminhoBD As String)
    
   Dim db As Database
    
   Set db = OpenDatabase(CaminhoPlanilha, True, False, "Excel 5.0")
    
   Call db.Execute("Select * into [;database=" & CaminhoBD & "]." & NomeTabela & " _
 FROM [" & NomePasta & "$]")
    
   MsgBox "Tabela Exportada com Sucesso", vbInformation, "JcmSoft"

End Sub

Lembre-se que você deve fazer referência a livraria DAO em seu projeto.

Voce pode usar um formulário com 4 TextBox para informar os parâmetros e um botão de comando que ao ser clicado chama a função. O código do evento Click deste botão pode ser:

Private Sub Command1_Click()
   On Error GoTo trata_erro
   
   ExportaExcel Text2.Text, Text1.Text, Text4.Text, Text3.Text
   Exit Sub
   
trata_erro:
      MsgBox Err.Number & " -  " & Err.Description
      Exit Sub

End Sub

Seu formulário com os 4 TextBox e o botão de comando deverá parecer com :

Após o processamento se formos expiar a tabela criada teremos exatamente o conteúdo da nossa planilha exibida. Algo como:

Por hoje é só. Bom proveito...

Veja os Destaques e novidades do SUPER DVD Visual Basic (sempre atualizado) : clique e confira !

Quer migrar para o VB .NET ?

Quer aprender C# ??

Quer aprender os conceitos da Programação Orientada a objetos ?

Quer aprender o gerar relatórios com o ReportViewer no VS 2013 ?

  Gostou ?   Compartilhe no Facebook   Compartilhe no Twitter

Referências:


José Carlos Macoratti