Como integrar dados do excel em um documento do word

Durante a sua semana de trabalho, há provavelmente muitas vezes que você encontrar-se copiando e colando informações do Excel no Word, ou o contrário.

Isto é como as pessoas costumam produzir relatórios escritos com base em dados que são acumulados e atualizados em uma planilha do Excel. Nós oferecido um monte de dicas bem legais e ferramentas para Excel ao longo dos anos, como o artigo de Saikat na produção gráficos de aparência profissional, e artigo de Steve em fresco modelos do Excel para gestão de projectos.Como criar atraentes gráficos com aparência profissional usando o gráfico Ferramentas do MS Word 2010Como criar atraentes gráficos com aparência profissional usando o gráfico Ferramentas do MS Word 2010Gráficos, como uma forma ilustrada de mostrar fatos chatos e figuras, sempre ajudou a embelezar documentos do Word profissionais. leitores Charts ajudar a comparar os dados e compreender as tendências com um olhar. Mas como você criar ...consulte Mais informação

Neste artigo, vou mergulhar um pouco mais para o fundo VBA scripting que permite conexões entre dados que podem ser armazenados em um arquivo de Excel e documentos do Word onde você pode estar produzindo relatórios realmente programa.

Na verdade, é surpreendentemente fácil de integrar dados do Excel no Word quando você sabe como adicionar as referências certas, e como colocar para fora a sintaxe do código VBA fundo.

Integração de dados de Excel num documento do Word

Neste exemplo, eu vou começar com uma planilha Excel bastante simples. Na realidade, o arquivo Excel pode consistir em várias planilhas com grandes quantidades de dados, não importa.

Contanto que você sabe onde residem os dados na planilha, você será capaz de alcançar e agarrar-lo usando VBA.

Aqui está o que a minha planilha de exemplo parece. É uma lista dos totais de despesas que foram calculados ao longo de todo o ano.

integrar Excel no Word

Video: Protegendo dados e arquivos - Excel ou Word

Agora, digamos que você tenha um gerente que gostaria de ver um relatório bem formatado que descreve as despesas, agrupando itens idênticos e colocando tudo em um layout que é um pouco mais agradável aos olhos (e mais fácil para os meninos grandes no andar de cima para entender).

Você pode fazer isso através da incorporação de objetos como caixas de texto ou etiquetas no documento do Word. Quando você está no Word, basta clicar sobre o Desenvolvedor guia do menu e selecione “Modo design”Na caixa de controles. Use o Ferramentas legadas ícone suspenso para encontrar onde você pode inserir etiquetas em seu documento.

mover dados do Excel para palavra

Depois de ter o rótulo colocado no documento onde você quer que ele (nem sempre uma tarefa fácil), você está pronto para programar o feed de dados. Mas primeiro você precisa nomear o rótulo de modo que a VBA possa identificá-lo. Botão direito do mouse no rótulo e entrar em propriedades. Encontre o "(Nome)" campo e chamá-lo algo que você vai se lembrar.

Agora, adicione um botão de comando a partir da lista Ferramentas suspensa mesma Legacy, colocá-lo em seu documento, e dê um duplo clique nele para abrir o editor VBA. Quando você começar o seu código de trabalho mais tarde, você pode modificá-lo para que o código é executado no evento Open Document (). Você verá que as caixas objeto suspensas na janela do editor.

Para começar conectando Word para o Excel, você vai precisar fazer referência Excel. Clique em Ferramentas, e depois Referências. Role a lista até ver o “12.0 Object Library Microsoft Excel”E selecioná-lo.

mover dados do Excel para palavra



Uma vez feito isso, o resto é apenas uma questão de escrever um script ridiculamente simples VBA para obter dados de uma planilha do Excel e atualizar automaticamente a legenda do rótulo com os dados. Aqui está como isso funciona.

Private Sub CommandButton1_Click () Dim objExcel As New Excel.ApplicationDim exWb Como Excel.WorkbookSet exWb = objExcel.Workbooks.Open ("c: temp expenses.xls") ThisDocument.yrTotal.Caption = exWb.Sheets ("Sheet1") .Cells (12, 2) exWb.CloseSet exWb = NothingEnd Sub

Veja como isso funciona? O objeto de aplicação “exWb” Excel abre o arquivo Excel no caminho que você fornecê-lo, e ele vai ir direto para o número da folha e célula específica, extrair os dados e colocá-lo na propriedade de legenda do rótulo que você nomeou “yrTotal“.

Video: Hipervinculos entre Excel y Word

Aqui está a macro VBA em ação.

mover dados do Excel para palavra

A parte mais difícil de lidar com etiquetas no Word é que às vezes é difícil para alinhá-lo no final de uma frase ou ao lado de qualquer outro texto.

Uma maneira de superar esse é realmente incorporando parte do texto ao lado dos dados no código VBA em si. Como você pode ver aqui, eu coloquei o texto estático à direita para a legenda quando eu criar o rótulo em si.

dados do Excel para o Word

Agora, tudo que você tem a fazer é incluir esse texto quando você atualizar a etiqueta com o seu script VBA, e apenas anexar os dados de arquivo do Excel para o final desse texto. Aqui está o que esse tipo de código seria semelhante.

Dim objExcel As New Excel.ApplicationDim exWb Como Excel.WorkbookSet exWb = objExcel.Workbooks.Open ("c: temp expenses.xls") ThisDocument.yrTotal.Caption = exWb.Sheets ("Sheet1") .Cells (12, 2) = ThisDocument.totHotels.Caption "hotéis: " & exWb.Sheets ("Sheet1") .Cells (5, 2) = ThisDocument.TotDining.Caption "Jantar fora: " & exWb.Sheets ("Sheet1") .Cells (2, 2) = ThisDocument.totTolls.Caption "portagens: " & exWb.Sheets ("Sheet1") .Cells (3, 2) = ThisDocument.totFuel.Caption "Combustível: " & exWb.Sheets ("Sheet1") .Cells (10, 2) exWb.CloseSet exWb = Nada

Você pode usar a concatenação “&”Símbolo para colocar conectar o texto estático com os dados extraídos da folha de Excel. Aqui está o que os resultados finais parecer no documento do Word atualizado.

integrar Excel no Word

Novamente, se você não quer ter, um grande botão feio comando cinza no documento do Word, basta ter o script de atualização de dados executado em Document.Open (), e tudo vai ocorrer nos bastidores.

De fato, em muitos casos, você pode criar o documento inicial, uma vez, e então você nunca terá que criá-la novamente. Tudo que você tem a fazer é abri-lo, e todos os rótulos irá atualizar automaticamente para você com os dados do arquivo Excel atualizado. Tudo que você tem que fazer é clicar para Imprimir e enviar o relatório ao seu gerente. Um relatório de 30 minutos apenas se transformou em uma cópia impressa 1 minuto!

Você pode pensar em quaisquer outros usos legais para esta técnica de integração de dados usando o VBA? Compartilhar algumas de suas próprias idéias e pensamentos na seção de comentários abaixo.

Shutterstock


Artigos relacionados