Atalhos de teclado na versão não inglesa do Microsoft Office

10

Eu tenho um grande problema com a versão em português do MS Office 2007 e 2010.

Os atalhos padrão usados por qualquer aplicativo comum são alterados.
Alguns atalhos que não estão funcionando: Ctrl + s (salvar), Ctrl + f (localizar) e < kbd> Ctrl + a (selecione todos).

Eu quero configurá-lo para usar os atalhos da versão em inglês.

Existe uma opção que permite configurar cada atalho separadamente. Além disso, eu tenho que configurar para cada aplicativo, se eu configurar no Word, vou ter que configurar novamente para o Excel.

Como usar os atalhos da versão em inglês do MS Office, independentemente do idioma do Office?

Obrigado

    
por Squall 06.07.2012 / 00:50

2 respostas

3

Tenho quase certeza de que não há uma maneira interna de alterar atalhos nos aplicativos do MS Office.

No entanto, você pode usar o AutoHotkey para essa finalidade.

O script

^a::
^f::
^s::
    WinGet, Process, ProcessName, A
    if(RegExMatch(Process, "^(WINWORD|EXCEL)\.EXE$"))
    {
       if(A_ThisHotKey = "^a")
           SendPlay, ^e
       if(A_ThisHotKey = "^f")
           SendPlay, ^b
       if(A_ThisHotKey = "^s")
           SendPlay, ^g
    }
    else
        SendPlay, %A_ThisHotKey%
return

Como funciona

  • ^a:: , especifica uma das teclas de atalho que executam o script antes da instrução return , em que ^ indica a tecla Ctrl .

  • WinGet, Process, ProcessName, A armazena o nome do processo da janela ativa ( A ) na variável Process .

  • if(RegExMatch(Process, "^(WINWORD|EXCEL)\.EXE$")) {...} else ... verifica se Process corresponde à expressão regular , ou seja, se corresponder a uma das strings WINWORD.EXE ou EXCEL.EXE .

    • Nesse caso, o primeiro bloco é executado.

      • if(A_ThisHotKey = "^a") verifica se a tecla de atalho pressionada é Ctrl + A .

        Se for, simula a tecla de comando Ctrl + E , que é a tecla de atalho portuguesa para selecionar todos 1 .

    • Caso contrário, SendPlay, %A_ThisHotKey% simula a combinação de teclas que foi inicialmente pressionada.

      Dessa forma, outros aplicativos ainda se comportam como deveriam.

Como usar

  1. Faça o download e instale a versão mais recente do AutoHotkey.

  2. Salve o script acima como ms-office.ahk , usando seu editor de texto favorito.

  3. Clique duas vezes no arquivo para executar o script.

  4. Se desejar, copie o script (ou um link para ele) na pasta Startup .

  5. Para adicionar outros aplicativos do MS Office, basta modificar a expressão regular.

    Para adicionar o PowerPoint, por exemplo, substitua (WINWORD|EXCEL) por (WINWORD|EXCEL|POWERPNT) .

  6. Para adicionar outras teclas de atalho, você precisa modificar duas partes do script.

    Para adicionar Ctrl + O (Abrir ...), por exemplo, adicione a linha ^o:: à lista no topo adicione essas linhas dentro da if block:

    if(A_ThisHotKey = "^o")
        SendPlay, ^a
    

1 Pelo menos, eu acho que é. Eu peguei as teclas de atalho do meu MS Office espanhol. Ajuste se necessário.

    
por 06.07.2012 / 16:47
1

Com base na resposta anterior, mais alguns atalhos (podem ser adicionados à resposta anterior):

^a::
^f::
^s::
^w::
^n::
^u::
^d::
^r::
^b::
^i::
^k::
^g::
    WinGet, Process, ProcessName, A
    if(RegExMatch(Process, "^(EXCEL)\.EXE$"))
    {
       if(A_ThisHotKey = "^a") ;seleccionar rango
           SendPlay, ^e
       if(A_ThisHotKey = "^f") ;buscar
           SendPlay, ^b
       if(A_ThisHotKey = "^s") ;guardar
           SendPlay, ^g
       if(A_ThisHotKey = "^w") ;cerrar
           SendPlay, ^r
       if(A_ThisHotKey = "^n") ;nuevo libro
           SendPlay, ^u
       if(A_ThisHotKey = "^u") ;subrayar
           SendPlay, ^s
       if(A_ThisHotKey = "^b") ;negrita
           SendPlay, ^n
       if(A_ThisHotKey = "^i") ;cursiva
           SendPlay, ^k
       if(A_ThisHotKey = "^d") ;filldown
           SendPlay, ^j
       if(A_ThisHotKey = "^r") ;fill right
           SendPlay, ^d
       if(A_ThisHotKey = "^k") ;hyperlink
           SendPlay, ^!k
       if(A_ThisHotKey = "^g") ;goto
           SendPlay, ^i
    }
    else
        SendPlay, %A_ThisHotKey%
return
    
por 04.08.2014 / 20:12