TKSoft-Online

NumLock-Taste per VBA setzen PDF Drucken E-Mail
( 2 Votes )
MS-Access Codes - Codeschnipsel MS-Access System und PC-System
  
Freitag, den 28. März 2008 um 06:00 Uhr

Problemstellung:

Wie kann ich mittels VBA die NumLock-Taste ein- bzw. ausschalten?
Für MS-Access00-07

 Achtung:
nur für Windows NT4, Windows 2000, Windows XP und Vista
 

Code in ein neues öffentliches Modul kopieren:

Private Const VK_NUMLOCK = &H90
Private Const KEYEVENTF_EXTENDEDKEY = &H1
Private Const KEYEVENTF_KEYUP = &H2

Private Declare Sub keybd_event Lib "user32" _
    (ByVal bVk As Byte, _
    ByVal bScan As Byte, _
    ByVal dwflags As Long, _
    ByVal dwExtraInfo As Long)

Private Declare Function GetKeyboardState Lib "user32" _
        (pbKeyState As ByteAs Long

Private Declare Function SetKeyboardState Lib "user32" _
        (lppbKeyState As ByteAs Long

Function SetNumLock(bStatus As BooleanAs Boolean
  Dim R As Variant
  Dim NumLockOn As Boolean
  Dim KeyTable(0 To 255) As Byte

  R = GetKeyboardState(KeyTable(0))
  NumLockOn = (KeyTable(VK_NUMLOCK) <> 0)

  If (bStatus And Not NumLockOn) Or _
              (Not bStatus And NumLockOn) Then
      keybd_event VK_NUMLOCK, _
      &H45, _
      KEYEVENTF_EXTENDEDKEY Or 0, 0
      keybd_event VK_NUMLOCK, _
      &H45, _
      KEYEVENTF_EXTENDEDKEY Or KEYEVENTF_KEYUP, 0
  End If
End Function

Aufruf:

  SetNumLock False


würde die NumLock-Taste ausschalten

  SetNumLock True


würde die NumLock-Taste einschalten

DatumKlicks
Total3178
Mi. 233
Di. 222
Mo. 215
So. 203
Sa. 192
Fr. 183
Do. 171
Aktualisiert ( Donnerstag, den 01. Juli 2010 um 12:39 Uhr )
 

Kommentare  

 
0 # Köbi 2008-03-30 22:45
Funktioniert auch unter Windows Vista.
Antworten | Antworten mit Zitat | Zitieren
 
 
0 # TommyK 2008-03-31 04:13
Hallo Köbi,

danke für den Vista Hinweis. :D
Antworten | Antworten mit Zitat | Zitieren
 

Kommentar schreiben


Sicherheitscode
Aktualisieren

Login

Latest Comments

Latest Forum Posts

Mehr »

Download Statistik

41 Kategorien
187 Dateien
173461 Downloads