Criar novos documentos usando o VBA
Neste tutorial criaremos uma pequena aplicação cujo objetivo é criar novos documentos de acordo com a quantidade informada em uma caixa de texto do formulário.
Este tutorial será bastante extenso para que aqueles que não têm nenhum conhecimento sobre VBA possam acompanhar todo o desenvolvimento, desde a elaboração do formulário até a criação do código.
Primeiramente vamos acessar o Editor do Visual Basic e construir passo a passo um formulário ao qual daremos o nome de frmcriadoc2 e assim que o formulário estiver concluído passaremos à criação do código que dará funcionalidade ao formulário.
Para acessar o Editor do Visual Basic acione a Guia Desenvolvedor e no Grupo Código clique em Visual Basic. Caso a Guia Desenvolvedor não esteja visível veja neste tutorial Como exibir a Guia Desenvolvedor no Word 2010.
Criando o Formulário
No Editor do Visual Basic clique no Menu Inserir e depois clique em UserForm.
Selecione o Formulário (UserForm1).
Na Janela Propriedades faça as seguintes alterações:
Name: frmcriadoc (Nome do Formulário)
Caption: Criar Novo Documento (Título do Formulário)
Height: 145,50 (Altura do Formulário)
Width: 297,75 (Largura do Formulário)
O formulário deverá ficar como o da imagem abaixo:
Agora devemos adicionar alguns controles ao formulário. Para esse formulário necessitaremos das seguintes ferramentas:
Quantidade |
Controle |
|
1 |
Label |
(Rótulo) |
1 |
Frame |
(Quadro) |
1 |
TextBox |
(Caixa de Texto) |
2 |
CommandButton |
(Botão de Comando) |
Na Caixa de Ferramentas clique na ferramenta Quadro (Frame).
Em seguida arraste-o e solte sobre o formulário para adicionar este controle.
Com o Quadro (Frame) selecionado altere as seguintes propriedades:
Caption: (Título do Frame - deixar esta propriedade em branco)
Height: 72 (Altura do Frame)
Left:6 (Posição do Frame com relação a lateral esquerda do Formulário)
Top: 18 (Posição do Frame com relação ao Topo do Formulário)
Width: 276 (Largura do Frame)
Deverá ficar como na imagem abaixo:
Agora vamos adicionar a Caixa de Texto (TextBox) ao Formulário. Para isso na Caixa de Ferramentas clique na ferramenta Caixa de Texto (TextBox).
Em seguida, no Formulário, clique dentro do Quadro (Frame) para adicionar a Caixa de Texto ao formulário.
Com a Caixa de Texto (TextBox) selecionada altere as seguintes propriedades:
Name: txtNumDoc (nome da caixa de texto)
Font: Tahoma, Tamanho 12 (tipo e tamanho da fonte)
Height: 24 (altura da caixa de texto)
Left: 12 (distância da lateral do Quadro)
Top: 30 (distância do topo do Formulário)
Width: 180 (largura da caixa de texto)
Depois de alterada suas propriedades a Caixa de Texto adicionada em nosso formulário deverá ficar como na imagem abaixo:
Continuando vamos adicionar a um Rótulo (Label) um pouco acima da Caixa de Texto.
Com o Rótulo (Label) selecionado altere as seguintes propriedades:
Caption: Informe o número de documentos que deseja criar.
Font: Tahoma, Tamanho 11 (tipo e tamanho da fonte)
Height: 18 (altura da caixa de texto)
Left: 6 (distância da lateral do Quadro)
Top: 6 (distância do topo do Formulário)
Width: 180 (largura da caixa de texto)
Observe como deve ficar o Rótulo que acabamos de adicionar ao formulário:
Na Caixa de ferramentas clique agora na ferramenta Botão de Comando (CommandButton) para adicionar um botão ao formulário. Este primeiro botão deverá ficar dentro do Quadro (Frame), de preferência na frente da Caixa de Texto.
Com o Botão de comando (CommandButton) selecionado altere as seguintes propriedades:
Caption: Criar
Font: Tahoma, Negrito, Tamanho 10 (tipo e tamanho da fonte)
Height: 24 (altura da caixa de texto)
Left: 198 (distância da lateral do Quadro)
Top: 30 (distância do topo do Formulário)
Width: 66 (largura da caixa de texto)
Observe como deve ficar o botão que acabamos de adicionar ao formulário:
Novamente na Caixa de ferramenta clique em Botão de Comando (CommandButton) para adicionar o segundo botão ao formulário. Este segundo botão deverá ser posicionado fora do Quadro (Frame).
Com o Botão de comando (CommandButton) selecionado altere as seguintes propriedades:
Caption: Sair
Font: Tahoma, Negrito, Tamanho 10 (tipo e tamanho da fonte)
Height: 24 (altura da caixa de texto)
Left: 114 (distância da lateral do Quadro)
Top: 96 (distância do topo do Formulário)
Width: 66 (largura da caixa de texto)
Observe como deve ficar o botão que acabamos de adicionar ao formulário:
Agora selecione o formulário e clique em Executar para ver como ficou o formulário.
Eis o formulário em tempo de execução:
Pronto, assim, finalizamos a etapa de criação da interface da nossa aplicação, passaremos agora para a próxima etapa que é a criação do código que fará todo trabalho por trás do formulário.
Então vamos lá...
Selecione a Caixa de Texto (txtNumDoc) em seguida clique com o botão direito do mouse e depois clique em Exibir Código.
Na Janela de Código selecione o Procedimento KeyPress, como mostra a imagem abaixo:
Dentro do evento KeyPress adicione o seguinte código
'Permite somente a digitação de número na Caixa de Texto (TextBox1)
Dim strSoNum As String
strSoNum = "0123456789"
If InStr(strSoNum, Chr(KeyAscii)) = 0 Then
KeyAscii= 0
End If
Deverá ficar como na imagem abaixo:
Selecione o Botão Criar e clique com o botão direito do mouse sobre ele e depois clique em Exibir Código.
Dentro do evento Click adicione o código a seguir:
Dim sNum As Integer
Dim intCounter As Integer
sNum = txtNumDoc
'Cria novo(s) documento(s) de acordo com o número informado na Caixa de Texto
For intCounter = 1 To sNum
Documents.Add
Next intCounter
'fecha o formulário
Unload Me
Ficará como na imagem abaixo:
Selecione o botão Sair e clique com o botão direito do mouse e selecione Exibir Código.
Dentro do evento Click adicione
Unload Me
Ficará como na imagem abaixo:
Agora criaremos uma macro para abrir o formulário sempre que for necessário.
Na Janela de Código adicione as seguintes linhas de código:
Sub criadocs()
'Abre o formulário
frmcriadoc2.Show
End Sub
Deverá ficar como na imagem abaixo:
Feche o Editor do Visual Basic clicando no Menu Arquivo e depois em Fechar e Voltar para Microsoft Word.
Na Guia Desenvolvedor, no Grupo Código clique em Macros.
Selecione a macro criadocs e clique no botão Executar.
O formulário para criar novos documentos será exibido e você poderá informar no número de documentos que deseja criar. Neste nosso exemplo criaremos 5 documentos, portanto informe o número de documentos e clique no botão Criar.
Observe que Foram criados cinco novos documentos (Documento1, Documento2, Documento3, Documento4 e Documento5).
Faça download do arquivo usado como exemplo neste tutorial: Baixar Arquivo