Visual Basic for Applications ( VBA ) , a linguagem de script da Microsoft para o Excel e Word, permite que os usuários destes programas escrever scripts que agilizam tarefas comuns como o acesso a dados de tabelas. Além de dar aos usuários do Excel a capacidade de gerenciar os dados da tabela do Excel , VBA também fornece um meio para acessar tabelas em documentos do Word. Desenvolvedores VBA se referir a esta capacidade de um programa do Office para executar outro como " automação ". Uma vantagem que automatizar a extração de dados do Word oferece é poupar tempo. Sem automação , os usuários do Excel pode precisar usar métodos mais demorados para trazer dados para o Excel a partir do Word. Instruções
1
Crie um novo documento no Word com a tecla " Control- N . " Clique no menu "Inserir" e depois clique no ícone "Tabela" no painel "Tabela" . Clique em qualquer ícone celular para fazer uma tabela e , em seguida, digite os dados em pelo menos célula mais à esquerda do topo da linha. Salve o documento como "C: \\ WordTableData.doc " e feche o Word. Esta etapa cria dados de exemplo que você vai extrair com o Excel.
2
Crie um novo documento no Excel e , em seguida, pressione " Alt- F11 " para entrar no Visual Basic ambiente de desenvolvimento integrado (IDE). O IDE fornece os meios para inserir manualmente os programas VBA , em contraste com a gravação de macros no Excel.
3
Clique em "Inserir " e depois " Módulo " para criar um novo módulo para a entrada de código de programa . Digite o seguinte código em qualquer lugar dentro do novo módulo:
Public Sub accessTable ()
Set appWD = CreateObject (" Word.Application " )
appWD.Documents.Open Matrícula : = " C: \\ WordTableData.doc " , _
ConfirmConversions : = false , ReadOnly : = False, AddToRecentFiles : = False ,
PasswordDocument : = "", PasswordTemplate : = "" , Revert : = False , _
WritePasswordDocument : = "", WritePasswordTemplate : = "", Formato: = _
wdOpenFormatAuto
x = appWD.ActiveDocument.Tables ( 1). linhas (1) . Cells (1)
MsgBox ( x)
appWD.Quit
End Sub
Esta sub-rotina cria uma escondido instância do Microsoft Word, então usa -lo para abrir um documento do Word e obter o valor de uma célula em primeira tabela do documento.
4
Clique em " Referências" artigo do IDE no menu "Ferramentas" e em seguida, role para baixo a lista de objetos até ver " Biblioteca de objetos do Microsoft Word. " Coloque uma verificação na caixa à esquerda deste item e , em seguida, feche a caixa de diálogo " Referências ". Para ser executado, o código precisa de vincular a objetos virtuais do Word (por exemplo, tabelas) . A caixa de diálogo "Referências" permite criar esse link.
5
Clique em qualquer lugar dentro da sub-rotina " accessTable " você escreveu no passo 3 e , em seguida, pressione "F5" para executar a sub-rotina. Após uma breve pausa , o Excel irá exibir uma caixa de diálogo com os dados inseridos na tabela do documento do Word no Passo 1.
6
Digite o novo código a seguir após a instrução " Public Sub " no " accessTable " sub-rotina :
fraca someRow , someColumn
someRow = InputBox (". Digite a linha que você gostaria de puxar os dados de ")
someColumn = InputBox ( " Digite a coluna que você gostaria de puxar os dados. " )
Estas novas declarações, e aquele na próxima etapa , permitem que você escolha qual célula da tabela para extrair os dados.
7
Substituir a instrução começa com " x = appWD " com esta declaração: .
.
x = appWD.ActiveDocument.Tables (1) linhas ( someRow ) células ( someColumn )
8
Execute o sub-rotina como você fez no Passo 5 . Responda às solicitações para a linha e coluna. Seu programa revisto irá extrair os dados da tabela a partir da célula que você especificou e exibi-lo em uma caixa de diálogo.