Tutoriais Word
Home  |  Tutoriais  |  Artigos  |  VBA  |  Download  |  eBooks Word VBA  |  Dicas e Truques  |  Teclas de Atalho  |  Serviços  |  Contato


Categorias

Básico/Intermediário

  Avançado

  VBA

  Tabelas

  Formulário

  Campo

  Livros

  ABNT

  TCC

Personalizando Formulário

eBook Word 2010 VBA

Tabela do Word como banco de dados

Home > VBA > Extrair dados do Excel para o Word




Extrair dados do Excel.






Neste tutorial criaremos uma macro que irá Extrair dados do Excel e adicioná-los a um documento do Word.


Temos a seguinte planilha do Excel, mostrada na imagem abaixo, contendo o número de alunos de cada série. Nosso objetivo é transportar esses dados para o Word apenas com um clique, sem precisar digitar ou copiar e colar.


Planilha do Excel


Anote o endereço com o nome completo e extensão do arquivo Excel. Neste exemplo a nossa planilha está no endereço:


C:\Users\DICHO\Documents\Número de alunos por série.xlsx


Local do Arquivo


Agora vamos abrir um novo documento Word e na Guia Desenvolvedor, no Grupo Código clique em Visual Basic ou use o atalho ALT + F11.


Guia Desenvolvedor


No ambiente de desenvolvimento do VBA clique no menu Inserir e depois clique em Módulo.


Inserir Módulo


Em seguida clique no menu Ferramentas e em seguida clique em Referências...


Referências


Em Referências disponíveis desça com a barra de rolagem e selecione Microsoft Excel 14.0 Object Library depois clique no botão OK.


Referências - Project


Na Janela de Código criaremos a macro e daremos o nome de dadosexcel, portanto adicione o seguinte Código:


Sub dadosexcel()
Dim objExcel As New Excel.Application
Dim wb As Excel.Workbook

'Define qual planilha do excel será extraído os dados
Set wb = objExcel.Workbooks.Open("C:\Users\DICHO\Documents\Número de alunos por série.xlsx")

'Extrai os dados das células da planilha especeficada e insere no Word
With Selection
.TypeText wb.Sheets("Plan1").Cells(1, 1) & ":"
.TypeText wb.Sheets("Plan1").Cells(1, 2) & vbCrLf
.TypeText wb.Sheets("Plan1").Cells(2, 1) & ":"
.TypeText wb.Sheets("Plan1").Cells(2, 2) & vbCrLf
.TypeText wb.Sheets("Plan1").Cells(3, 1) & ":"
.TypeText wb.Sheets("Plan1").Cells(3, 2) & vbCrLf
.TypeText wb.Sheets("Plan1").Cells(4, 1) & ":"
.TypeText wb.Sheets("Plan1").Cells(4, 2) & vbCrLf
.TypeText wb.Sheets("Plan1").Cells(5, 1) & ":"
.TypeText wb.Sheets("Plan1").Cells(5, 2) & vbCrLf
End With
wb.Close
Set wb = Nothing

'Seleciona e converte o texto em tabela
Selection.WholeStory
Selection.ConvertToTable Separator:=wdSeparateByDefaultListSeparator, _
NumColumns:=2, NumRows:=5, AutoFitBehavior:=wdAutoFitFixed
With Selection.Tables(1)
.Style = "Tabela com grade"
.ApplyStyleHeadingRows = True
.ApplyStyleLastRow = False
.ApplyStyleFirstColumn = True
.ApplyStyleLastColumn = False
End With

'Aplica alinhamento centralizado à tabela
Selection.ParagraphFormat.Alignment = wdAlignParagraphCenter
End Sub



Veja como deverá ficar na Janela de Código:


Janela de Código


Feito isso vamos fechar o Editor do Visual Basic para voltar ao Microsoft Word.


Cliqueno menu Arquivo e em Fechar e voltar para o Microsoft Word.


Fechar o Visual Basic


Clique na Guia Desenvolvedor e no Grupo Código clique em Macros.


Macros


Selecione a macro dadosexcel e clique em Executar.


Executar macro


Veja o resultado:


Tabela no Word com dados do Excel


Consideração Final:


Existem outras formas de Extrair dados do Excel utilizando o VBA que estaremos mostrando em outros tutoriais, por exemplo, usando Indicadores.


Observe que no final de algumas linha de código adicionamos ":" (dois pontos) para servir de separador na hora de converter o texto em tabela.





Gostou? Se quiser aprender mais eu tenho um e-Book sobre VBA do Word que você pode se interessar.
Confira aqui








Conteúdo Correspondente:



      






eBook Word 2010 VBA


© 2013 Tutoriais Word - Todos os direitos reservados