Do Básico ao Avançado
Home  Tutoriais  Artigos  Contato

Enter em vez de Tab

Por padrão, para navegar entre os campos de um formulário usa-se a tecla TAB, porém alguns usuários não sabem disso e acabam apertando a tecla ENTER, isso faz com que desconfigure todo seu documento. Por exemplo, quando se aperta a tecla ENTER dentro de um Campo de formulário texto, cria-se uma nova linha.

Veja nas imagem abaixo:

Ilustração 1 - Mudando de campo usando TAB

Formulário

Ilustração 2 - ENTER dentro de um Campo de Formulário Texto

Formulário

Para que a tecla ENTER funcione como a tecla TAB é preciso recorrer a uma pequena rotina de programação em linguagem Visual Basic for Applications (VBA). Isso é necessário porque não há uma outra forma de fazer isso, senão via programação.

Com as macros abaixo é possível fazer com que a tecla ENTER mude para o próximo campo como se fosse a tecla TAB.

Abra o documento que contém o formulário e clique no Menu Ferramentas >> Macro >> Editor do Visual Basic ou se referir acione a combinação de teclas Alt+F11

Editor do Visual Basic

No Editor do Visual Basic Insira um novo Módulo e cole a seguinte macro:

Inserir Módulo

Sub EnterKeyMacro()

If ActiveDocument.ProtectionType = wdAllowOnlyFormFields And _

Selection.Sections(1).ProtectedForForms = True Then

myformfield = Selection.Bookmarks(1).Name

If ActiveDocument.FormFields(myformfield).Name <> _

ActiveDocument.FormFields(ActiveDocument.FormFields.Count) _

.Name Then

ActiveDocument.FormFields(myformfield).Next.Select

Else

ActiveDocument.FormFields(1).Select

End If

Else

Selection.TypeText Chr(13)

End If

End Sub

Deverá ficar como na imagem abaixo:

Janela de Código

Agora na janela de Projeto (Project) dê um duplo clique em ThisDocument e cole a seguinte macro:

ThisDocument

Private Sub Document-Open()

CustomizationContext = ActiveDocument.AttachedTemplate

KeyBindings.Add KeyCode:=BuildKeyCode(wdKeyReturn), _

KeyCategory:=wdKeyCategoryMacro,Command:="EnterKeyMacro"

End Sub

Deverá ficar como na imagem abaixo:

Janela de Código

Parte inferior do formulário

OBS: Essa ação afetará todos os aplicativos do Office portanto se desejar usar um outro aplicativo ou abrir outro documento é recomendável fechar o documento que contém o formulário.

Por esse motivo é obrigatório que se coloque a macro abaixo no evento close do documento para que a tecla ENTER volte funcionar normalmente quando o documento for fechado.

Portanto em ThisDocument copie e cole a macro abaixo:

Private Sub Document-Close()

CustomizationContext = ActiveDocument.AttachedTemplate

FindKey(KeyCode:=BuildKeyCode(wdKeyReturn)).Disable

Templates(1).Save

End Sub

Deverá ficar como na imagem abaixo:

Janela de Código



Formação Pacote Office



eBook Word 2010 VBA

Política de Privacidade  |   © 2013 Tutoriais Word - Todos os direitos reservados