Skróty klawiaturowe w nieanglojęzycznej wersji pakietu Microsoft Office

12

Mam duży problem z portugalską wersją MS Office 2007 i 2010.

Standardowe skróty używane przez dowolne popularne aplikacje są zmieniane.
Niektóre skróty, które nie działają: Ctrl+ s(zapisz), Ctrl+ f(znajdź) i Ctrl+ a(wybierz wszystkie).

Chcę go skonfigurować do korzystania ze skrótów wersji angielskiej.

Istnieje opcja, która pozwala skonfigurować każdy skrót osobno. Ponadto muszę skonfigurować dla każdej aplikacji, jeśli skonfiguruję w programie Word, będę musiał ponownie skonfigurować program Excel.

Jak korzystać ze skrótów angielskiej wersji MS Office niezależnie od języka Office?

Dzięki

Szkwał
źródło
To samo tutaj !! Ten sam język również. LOL. Zastanawiam się nad zainstalowaniem wersji EN, a następnie dodaniem pakietu językowego do słownika. Próbowałeś tego?
Pedro77
możliwy duplikat Jak zmienić skróty biurowe?
Pedro77
We włoskiej wersji, aby zapisać, musimy nacisnąć ctrl + B, to jest tak denerwujące ...
Luca,

Odpowiedzi:

3

Jestem prawie pewien, że nie ma wbudowanego sposobu zmiany skrótów w aplikacjach MS Office.

W tym celu można jednak użyć AutoHotkey .

Scenariusz

^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

Jak to działa

  • ^a::, określa jeden ze skrótów uruchamiających skrypt przed returninstrukcją, gdzie ^wskazuje Ctrlklucz.

  • WinGet, Process, ProcessName, Aprzechowuje Anazwę procesu okna active ( ) w zmiennej Process.

  • if(RegExMatch(Process, "^(WINWORD|EXCEL)\.EXE$")) {...} else ...sprawdza, czy Process pasuje do wyrażenia regularnego , tj. czy pasuje do jednego z ciągów WINWORD.EXElub EXCEL.EXE.

    • Jeśli tak, pierwszy blok zostanie wykonany.

      • if(A_ThisHotKey = "^a")sprawdza, czy naciśnięty klawisz skrótu to Ctrl+ A.

        Jeśli tak, symuluje klawisz bombardowania Ctrl+ E, który jest portugalskim skrótem do wybierania wszystkich 1 .

    • W przeciwnym razie SendPlay, %A_ThisHotKey%symuluje kombinację klawiszy, która została początkowo naciśnięta.

      W ten sposób inne aplikacje nadal zachowują się tak, jak powinny.

Jak używać

  1. Pobierz i zainstaluj najnowszą wersję AutoHotkey.

  2. Zapisz powyższy skrypt jako ms-office.ahk, używając ulubionego edytora tekstu.

  3. Kliknij dwukrotnie plik, aby uruchomić skrypt.

  4. Jeśli chcesz, skopiuj skrypt (lub link do niego) w Startupfolderze.

  5. Aby dodać kolejne aplikacje MS Office, wystarczy zmodyfikować wyrażenie regularne.

    Aby dodać PowerPoint, np. Zamień (WINWORD|EXCEL)na (WINWORD|EXCEL|POWERPNT).

  6. Aby dodać kolejne klawisze skrótu, musisz zmodyfikować dwie części skryptu.

    Aby dodać Ctrl+ O(Otwórz ...), np. Dodaj linię ^o::do listy na samej górze dodaj te linie wewnątrz ifbloku:

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

1 Przynajmniej tak mi się wydaje . Wziąłem skróty z mojego hiszpańskiego MS Office. Dostosuj w razie potrzeby.

Dennis
źródło
1

W oparciu o poprzednią odpowiedź, kilka innych skrótów (można dodać do poprzedniej odpowiedzi):

^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
s_a
źródło