VBA - skrót wywoływany tylko w określonej kolumnie

VBA - skrót wywoływany tylko w określonej kolumnie

Wątek przeniesiony 2021-01-28 13:32 z Inne języki programowania przez cerrato.

PL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0

Cześć,

Jak zrobić własny skrót który będzie wywoływany tylko jak będzie aktywna komórka z konkretnej kolumny.
(Chodzi o Application.OnKey )

Powinno działać tak, że jak jestem np ustawiony na kolumnie K (gdziekolwiek) i naciskam 'Enter' to uruchamia się makro.

Udało mi się zrobić tak, że po prostu po wciśnięciu 'Enter' makro się uruchamia ale ma działać tylko jak jestem na wybranej kolumnie.

Z góry dzięki.

PA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3902
0

warunek:

Kopiuj
If ActiveCell.Column = 11 Then
    'kod dowykonania
Else
    Exit Sub
End If
PL
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 2
0
Panczo napisał(a):

warunek:

Kopiuj
If ActiveCell.Column = 11 Then
    'kod dowykonania
Else
    Exit Sub
End If

Sub shortcut()
If ActiveCell.Column = 8 Then
Application.OnKey "", "Makro1"
Else: Application.OnKey "
"
End If

End Sub

ok tylko teraz działa tylko jak ręcznie uruchomię to makro,
a chodzi mi o to czy da się tak ustawić, że makro będzie się uruchamiało w zależności od tego która komórka jest aktywna

Np. jestem na kolumnie 8 - naciskam Enter i wykonuje sie Makro1 ale jak jestem na kolumnie 7 i naciskam Enter to działa jak po prostu Enter :)

PA
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 3902
0

Nie wiem czy to jest możliwe, generalnie wydaje mi się, że napisywanie działania entera nie jest dobrym pomysłem. Lepszym rozwiązaniem wydaje się stworzenie skrótu, który nie ędzie kolidował z żadnym innym

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.