Habilitar e desabilitar teclado

Tem alguma dica para o uso do Excel? Algum atalho especial? Algum macete? Aqui é o lugar para você compartilhar!

Habilitar e desabilitar teclado

Mensagempor Rafaellinopa » Seg Ago 03, 2009 1:50 pm

Neste exemplo será mostrado como desabilitar todo o teclado do Excel, utilizano o método onkey que vai acionar uma macro vazia desabilitando as keys

segue código:
Código: Selecionar todos
Option Explicit
Private Sub EnableKeyEnter(ByVal IsSetEnable As Boolean)
Dim iX As Long
Dim iY As Long
Dim iZ As Long
Dim KeyCode(1 To 19) As Variant
KeyCode(1) = Array _
("{UP}", "+{UP}", "^{UP}", "%{UP}", "+^{UP}", "+%{UP}", _
"{BS}", "+{BS}", "^{BS}", "%{BS}", "+^{BS}", "+%{BS}", _
"{TAB}", "+{TAB}", "^{TAB}", "%{TAB}", "+^{TAB}", "+%{TAB}", _
"{DEL}", "+{DEL}", "^{DEL}", "%{DEL}", "+^{DEL}", "+%{DEL}")

KeyCode(2) = Array _
("+{ESC}", "^{ESC}", "%{ESC}", "+^{ESC}", "+%{ESC}", _
"{END}", "+{END}", "^{END}", "%{END}", "+^{END}", "+%{END}", _
"{96}", "{97}", "{98}", "{99}", "{100}", "{101}", "{102}", "{103}", "{104}", "{105}", "{106}", "{107}", _
"{109}", "{110}", "{111}", "{19}")

KeyCode(3) = Array _
("{HOME}", "+{HOME}", "^{HOME}", "%{HOME}", "+^{HOME}", "+%{HOME}", _
"{PGDN}", "+{PGDN}", "^{PGDN}", "%{PGDN}", "+^{PGDN}", "+%{PGDN}", _
"{PGUP}", "+{PGUP}", "^{PGUP}", "%{PGUP}", "+^{PGUP}", "+%{PGUP}", _
"{DOWN}", "+{DOWN}", "^{DOWN}", "%{DOWN}", "+^{DOWN}", "+%{DOWN}")

KeyCode(4) = Array _
("{LEFT}", "+{LEFT}", "^{LEFT}", "%{LEFT}", "+^{LEFT}", "+%{LEFT}", _
"{RIGHT}", "+{RIGHT}", "^{RIGHT}", "%{RIGHT}", "+^{RIGHT}", "+%{RIGHT}", _
"{ENTER}", "+{ENTER}", "^{ENTER}", "%{ENTER}", "+^{ENTER}", "+%{ENTER}", "~", "+~", "^~", "%~", "+^~", "+%~", _
"{INSERT}", "+{INSERT}", "^{INSERT}", "%{INSERT}", "+^{INSERT}", "+%{INSERT}")
KeyCode(5) = Array _
("{F1}", "+{F1}", "^{F1}", "%{F1}", "+^{F1}", "+%{F1}", "{F2}", "+{F2}", "^{F2}", "%{F2}", "+^{F2}", "+%{F2}", _
"{F3}", "+{F3}", "^{F3}", "%{F3}", "+^{F3}", "+%{F3}", "{F4}", "+{F4}", "^{F4}", "%{F4}", "+^{F4}", "+%{F4}")

KeyCode(6) = Array _
("{F5}", "+{F5}", "^{F5}", "%{F5}", "+^{F5}", "+%{F5}", "{F6}", "+{F6}", "^{F6}", "%{F6}", "+^{F6}", "+%{F6}", _
"{F7}", "+{F7}", "^{F7}", "%{F7}", "+^{F7}", "+%{F7}", "{F8}", "+{F8}", "^{F8}", "%{F8}", "+^{F8}", "+%{F8}")

KeyCode(7) = Array _
("{F9}", "+{F9}", "^{F9}", "%{F9}", "+^{F9}", "+%{F9}", _
"{F10}", "+{F10}", "^{F10}", "%{F10}", "+^{F10}", "+%{F10}", _
"{F11}", "+{F11}", "^{F11}", "%{F11}", "+^{F11}", "+%{F11}", _
"{F12}", "+{F12}", "^{F12}", "%{F12}", "+^{F12}", "+%{F12}")

KeyCode(8) = Array _
("a", "+a", "^a", "%a", "+^a", "+%a", "b", "+b", "^b", "%b", "+^b", "+%b", _
"c", "+c", "^c", "%c", "+^c", "+%c", "d", "+d", "^d", "%d", "+^d", "+%d")

KeyCode(9) = Array _
("e", "+e", "^e", "%e", "+^e", "+%e", "f", "+f", "^f", "%f", "+^f", "+%f", _
"g", "+g", "^g", "%g", "+^g", "+%g", "h", "+h", "^h", "%h", "+^h", "+%h")

KeyCode(10) = Array _
("i", "+i", "^i", "%i", "+^i", "+%i", "j", "+j", "^j", "%j", "+^j", "+%j", _
"k", "+k", "^k", "%k", "+^k", "+%k", "l", "+l", "^l", "%l", "+^l", "+%l")

KeyCode(11) = Array _
("m", "+m", "^m", "%m", "+^m", "+%m", "n", "+n", "^n", "%n", "+^n", "+%n", _
"o", "+o", "^o", "%o", "+^o", "+%o", "p", "+p", "^p", "%p", "+^p", "+%p")

KeyCode(12) = Array _
("q", "+q", "^q", "%q", "+^q", "+%q", "r", "+r", "^r", "%r", "+^r", "+%r", _
"s", "+s", "^s", "%s", "+^s", "+%s", "t", "+t", "^t", "%t", "+^t", "+%t")
KeyCode(13) = Array _
("u", "+u", "^u", "%u", "+^u", "+%u", "v", "+v", "^v", "%v", "+^v", "+%v", _
"w", "+w", "^w", "%w", "+^w", "+%w", "x", "+x", "^x", "%x", "+^x", "+%x")

KeyCode(14) = Array _
("y", "+y", "^y", "%y", "+^y", "+%y", "z", "+z", "^z", "%z", "+^z", "+%z", _
"0", "+0", "^0", "%0", "+^0", "+%0", "1", "+1", "^1", "%1", "+^1", "+%1")

KeyCode(15) = Array _
("2", "+2", "^2", "%2", "+^2", "+%2", "3", "+3", "^3", "%3", "+^3", "+%3", _
"4", "+4", "^4", "%4", "+^4", "+%4", "5", "+5", "^5", "%5", "+^5", "+%5")

KeyCode(16) = Array _
("6", "+6", "^6", "%6", "+^6", "+%6", "7", "+7", "^7", "%7", "+^7", "+%7", _
"8", "+8", "^8", "%8", "+^8", "+%8", "9", "+9", "^9", "%9", "+^9", "+%9")

KeyCode(17) = Array _
(" ", "+ ", "^ ", "% ", "+^ ", "+% ", "-", "+-", "^-", "%-", "+^-", "+%-", _
"\", "+\", "^\", "%\", "+^\", "+%\", "@", "+@", "^@", "%@", "+^@", "+%@")

KeyCode(18) = Array _
(";", "+;", "^;", "%;", "+^;", "+%;", ":", "+:", "^:", "%:", "+^:", "+%:", _
"{^}", "+{^}", "^{^}", "%{^}", "+^{^}", "+%{^}", "{[}", "+{[}", "^{[}", _
"%{[}", "+^{[}", "+%{[}")

KeyCode(19) = Array _
("{]}", "+{]}", "^{]}", "%{]}", "+^{]}", "+%{]}", "{,}", "+{,}", "^{,}", _
"%{,}", "+^{,}", "+%{,}", "{.}", "+{.}", "^{.}", "%{.}", "+^{.}", "+%{.}", _
"{/}", "+{/}", "^{/}", "%{/}", "+^{/}", "+%{/}", "{_}", "^{_}", "%{_}")
With Application
If IsSetEnable Then
For iX = 1 To 19
iZ = UBound(KeyCode(iX))
For iY = LBound(KeyCode(iX)) To iZ
.OnKey KeyCode(iX)(iY)
Next
Next
Else
For iX = 1 To 19
iZ = UBound(KeyCode(iX))
For iY = LBound(KeyCode(iX)) To iZ
.OnKey KeyCode(iX)(iY), "DisableKeyEnter"
Next
Next
End If
End With
End Sub

Sub DisableKeyEnter()
'Sub vazia que vai ser executada pelo metodo onkey mas não fará nada...
End Sub

'Habilitando teclado
Sub keyOn()
EnableKeyEnter True
End Sub

'Desabilitando teclado
Sub KeyOff()
EnableKeyEnter False
End Sub

By Mitsueda.
Rafaellinopa
 

{ SO_SELECT }

Voltar para Dicas & Macetes

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado e 1 visitante