Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1240to1244
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

SendKeys schaltet die Numerische Tastatur aus

SendKeys schaltet die Numerische Tastatur aus
Nibio
Hallo Profis,
ich sende damit per VBA die Taste F8, fuktioniert aber warum schaltet er die Numerische Tastatur
aus?
Sub F8_klicken()
SendKeys "{F8}", True
End Sub
Diese wir ausgeführt wärend der maus in eine Fremnde Fester positioniert ist. Hat jemand eine Idee?
Diesmal wird es schwer sein :-(
Danke im Vorraus
Gruss
Nibio
Nö : F8 schaltet NICHT die NUM-Funktion aus
29.12.2011 16:30:37
NoNet
Hallo Nibio,
ich kann das NICHT bestätigen :
Ich habe das Makro unter Excel 2003 mit einem Symbol in einer Symbolleiste verknüpft und es wird ordnungsgemäß ausgeführt (F8 aktiviert/deaktiviert im Tabellenblatt den Erweiterungs-Modus), die NUM-Funktion des numerischen Tastenfeldes bleibt davon unberührt :
Userbild
Es ist also keine Fehlfunktion von Excel, sondern hängt möglicherweise mit deinem "fremden Fenster" zusammen !?!? - Um welches Fenster bzw. Programm handelt es sich denn dabei ? - Was passiert, wenn Du direkt die F8-Taste drückst (nicht per Makro) ?
Salut, NoNet
Anzeige
AW: Nö : F8 schaltet NICHT die NUM-Funktion aus
29.12.2011 16:48:22
Nibio
Hallo NoNet,
ich sehe im Forum das auch andere Leute über das Problem berichten.
Das liegt doch an die fremde Fenster, ist ein Tool, mit daste F8 berechnet er was.
Die lösung wäre in den Script ein SendKey einzufügen um die Numerische Tastatur wieder einzuschalten,
wäre dies Möglich? Ich habs mit SendKeys "{Num oder Numlook on }", True
ausprobiert, geht aber nicht.
Danke Dir.
Gruss
Nibio
AW: Nö : F8 schaltet NICHT die NUM-Funktion aus
29.12.2011 19:28:37
Tino
Hallo,
von diesem Problem wird oft im Zusammenhang einer Logitech Tastatur berichtet,
ich habe zufällig auch eine und habe bei SendKey auch dieses Problem.
Ich verwende die Api Funktion um dieses Problem zu lösen.
Hier ein Beispiel, kann man alles im Internet finden!
Option Explicit
Private Declare Sub keybd_event _
Lib "user32" (ByVal byteVirtualKeycode As Byte, _
ByVal byteScan As Byte, ByVal lFlags As Long, ByVal lExtraInfo As Long)
Enum vk_Keys
VK_A = &H41   'Taste A
VK_B = &H42   'Taste B
VK_C = &H43   'Taste C
VK_D = &H44   'Taste D
VK_E = &H45   'Taste E
VK_F = &H46   'Taste F
VK_G = &H47   'Taste G
VK_H = &H48   'Taste H
VK_I = &H49   'Taste I
VK_J = &H4A   'Taste J
VK_K = &H4B   'Taste K
VK_L = &H4C   'Taste L
VK_M = &H4D   'Taste M
VK_N = &H4E   'Taste N
VK_O = &H4F   'Taste O
VK_P = &H50   'Taste P
VK_Q = &H51   'Taste Q
VK_R = &H52   'Taste R
VK_S = &H53   'Taste S
VK_T = &H54   'Taste T
VK_U = &H55   'Taste U
VK_V = &H56   'Taste V
VK_W = &H57   'Taste W
VK_X = &H58   'Taste X
VK_Y = &H59   'Taste Y
VK_SPACE = &H20
VK_RSHIFT = &HA1
End Enum
Private Const KEYEVENTF_KEYUP As Long = &H2  ' Taste lösen
Function Taste(vk_Key As vk_Keys, Optional ZusatzKey As vk_Keys = 0)
If ZusatzKey > 0 Then
keybd_event ZusatzKey, 0, 0, 0 'Taste drücken
End If
keybd_event vk_Key, 0, 0, 0 'Taste drücken
keybd_event vk_Key, 0, KEYEVENTF_KEYUP, 0 'Taste los lassen
If ZusatzKey > 0 Then
keybd_event ZusatzKey, 0, KEYEVENTF_KEYUP, 0 'Taste los lassen
End If
End Function
Sub Beispiel() 'Nibio
Taste VK_N, VK_RSHIFT
Taste VK_O
Taste VK_B
Taste VK_I
Taste VK_O
End Sub
Hier noch die Key Konstanten.
Const VK_LBUTTON = &H1  'Linker Mausbutton
Const VK_RBUTTON = &H2  'Rechter Mausbutton
Const VK_MBUTTON = &H4  'Mittlerer Masubutton
Const VK_BACK = &H8 'Backspace Taste
Const VK_TAB = &H9  'Tab Taste
Const VK_CLEAR = &HC    'Numpad 5 ohne Numlock
Const VK_RETURN = &HD   'Enter Taste
Const VK_SHIFT = &H10   'Shift Taste
Const VK_CONTROL = &H11 'STRG Taste
Const VK_MENU = &H12    'Alt Taste
Const VK_PAUSE = &H13   'Pause/Untbr
Const VK_CAPITAL = &H14 'Caps Lock/Feststelltaste
Const VK_ESCAPE = &H1B  'Escape
Const VK_SPACE = &H20   'Space/Leertaste
Const VK_PRIOR = &H21   'PageUp/Bild hoch
Const VK_NEXT = &H22    'PageDown/Bild runter
Const VK_END = &H23 'Ende
Const VK_HOME = &H24    'Home/Pos1
Const VK_LEFT = &H25    'Linke Pfeiltaste
Const VK_UP = &H26  'Obere Pfeilaste
Const VK_RIGHT = &H27   'Rechte Pfeiltaste
Const VK_DOWN = &H28    'Untee Pfeiltaste
Const VK_PRINT = &H2A   'Drucken (Nokia Tastaturen)
Const VK_SNAPSHOT = &H2C    'Drucken/S-Abf
Const VK_INSERT = &H2D  'Einfügen
Const VK_DELETE = &H2E  'Entfernen
Const VK_HELP = &H2F    'Hilfe
Const VK_0 = &H30   'Taste 0
Const VK_1 = &H31   'Taste 1
Const VK_2 = &H32   'Taste 2
Const VK_3 = &H33   'Taste 3
Const VK_4 = &H34   'Taste 4
Const VK_5 = &H35   'Taste 5
Const VK_6 = &H36   'Taste 6
Const VK_7 = &H37   'Taste 7
Const VK_8 = &H38   'Taste 8
Const VK_9 = &H39   'Taste 9
Const VK_A = &H41   'Taste A
Const VK_B = &H42   'Taste B
Const VK_C = &H43   'Taste C
Const VK_D = &H44   'Taste D
Const VK_E = &H45   'Taste E
Const VK_F = &H46   'Taste F
Const VK_G = &H47   'Taste G
Const VK_H = &H48   'Taste H
Const VK_I = &H49   'Taste I
Const VK_J = &H4A   'Taste J
Const VK_K = &H4B   'Taste K
Const VK_L = &H4C   'Taste L
Const VK_M = &H4D   'Taste M
Const VK_N = &H4E   'Taste N
Const VK_O = &H4F   'Taste O
Const VK_P = &H50   'Taste P
Const VK_Q = &H51   'Taste Q
Const VK_R = &H52   'Taste R
Const VK_S = &H53   'Taste S
Const VK_T = &H54   'Taste T
Const VK_U = &H55   'Taste U
Const VK_V = &H56   'Taste V
Const VK_W = &H57   'Taste W
Const VK_X = &H58   'Taste X
Const VK_Y = &H59   'Taste Y
Const VK_Z = &H5A   'Taste Z
Const VK_STARTKEY = &H5B    'Startmenütaste
Const VK_CONTEXTKEY = &H5D  'Kentextmenü
Const VK_NUMPAD0 = &H60 'Numpad Taste 0
Const VK_NUMPAD1 = &H61 'Numpad Taste 1
Const VK_NUMPAD2 = &H62 'Numpad Taste 2
Const VK_NUMPAD3 = &H63 'Numpad Taste 3
Const VK_NUMPAD4 = &H64 'Numpad Taste 4
Const VK_NUMPAD5 = &H65 'Numpad Taste 5
Const VK_NUMPAD6 = &H66 'Numpad Taste 6
Const VK_NUMPAD7 = &H67 'Numpad Taste 7
Const VK_NUMPAD8 = &H68 'Numpad Taste 8
Const VK_NUMPAD9 = &H69 'Numpad Taste 9
Const VK_MULTIPLY = &H6A    'Numpad Multiplikations Taste (*)
Const VK_ADD = &H6B 'Numpad Additions Taste (+)
Const VK_SUBTRACT = &H6D    'Numpad Subtrations Taste (-)
Const VK_DECIMAL = &H6E 'Numpad Komma Taste (,)
Const VK_DIVIDE = &H6F  'Numpad Devidierungs Taste (/)
Const VK_F1 = &H70  'F1 Taste
Const VK_F2 = &H71  'F2 Taste
Const VK_F3 = &H72  'F3 Taste
Const VK_F4 = &H73  'F4 Taste
Const VK_F5 = &H74  'F5 Taste
Const VK_F6 = &H75  'F6 Taste
Const VK_F7 = &H76  'F7 Taste
Const VK_F8 = &H77  'F8 Taste
Const VK_F9 = &H78  'F9 Taste
Const VK_F10 = &H79 'F10 Taste
Const VK_F11 = &H7A 'F11 Taste
Const VK_F12 = &H7B 'F12 Taste
Const VK_F13 = &H7C 'F13 Taste
Const VK_F14 = &H7D 'F14 Taste
Const VK_F15 = &H7E 'F15 Taste
Const VK_F16 = &H7F 'F16 Taste
Const VK_F17 = &H80 'F17 Taste
Const VK_F18 = &H81 'F18 Taste
Const VK_F19 = &H82 'F19 Taste
Const VK_F20 = &H83 'F20 Taste
Const VK_F21 = &H84 'F21 Taste
Const VK_F22 = &H85 'F22 Taste
Const VK_F23 = &H86 'F23 Taste
Const VK_F24 = &H87 'F24 Taste
Const VK_NUMLOCK = &H90 'Numlock Taste
Const VK_OEM_SCROLL = &H91  'Scroll Lock
Const VK_LSHIFT = &HA0  'Linke Shift-Taste
Const VK_RSHIFT = &HA1  'Rechte Shift-Taste
Const VK_LCONTROL = &HA2    'Linke STRG-Taste
Const VK_RCONTROL = &HA3    'Rechte STRG-Taste
Const VK_LMENU = &HA4   'Linke ALT-Taste
Const VK_RMENU = &HA5   'Rechte ALT-Taste
Const VK_OEM_1 = &HBA   '";"-Taste
Const VK_OEM_PLUS = &HBB    '"
Const VK_OEM_COMMA = &HBC   '","-Taste
Const VK_OEM_MINUS = &HBD   '"-"-Taste
Const VK_OEM_PERIOD = &HBE  '"."-taste
Const VK_OEM_2 = &HBF   '"/"-Taste
Const VK_OEM_3 = &HC0   '"`"-Taste
Const VK_OEM_4 = &HDB   '"["-Taste
Const VK_OEM_5 = &HDC   '"\"-Taste
Const VK_OEM_6 = &HDD   '"]"-Taste
Const VK_OEM_7 = &HDE   '"
Const VK_ICO_F17 = &HE0 'F17 einer Olivette Tastatur (Intern)
Const VK_ICO_F18 = &HE1 'F18 einer Olivette Tastatur (Intern)
Const VK_OEM102 = &HE2  '"

Gruß Tino
Anzeige
AW: Nö : F8 schaltet NICHT die NUM-Funktion aus
29.12.2011 19:38:00
Nibio
Hallo Tino,
Ja das stimmt, ich benutze Logitech Tastatur :-(. Danke.
Nun aber weiss ich nicht mehr weiter. Ich wollte einfach die Taste F8 senden,
Code ist kompliziert, ich verstehe ncihts :-(.
Gruß
Nibio
AW: Nö : F8 schaltet NICHT die NUM-Funktion aus
29.12.2011 20:38:09
Tino
Hallo,
du brauchst nur die entsprechende const einbauen.
bin nicht online, kann es jetzt nicht besser beschreiben.
Gruß Tino
hier ein Beispiel für die Taste F8
30.12.2011 09:38:08
Tino
Hallo,
die Zeile Taste VK_F8 entsprechend in Deinem Code an der Stelle
wo die Taste F8 gedrückt werden soll einfügen.
kommt als Code in Modul1
Option Explicit 
 
Private Declare Sub keybd_event _
Lib "user32" (ByVal byteVirtualKeycode As Byte, _
ByVal byteScan As Byte, ByVal lFlags As Long, ByVal lExtraInfo As Long) 
 
Enum vk_Keys 
  VK_F8 = &H77  'F8 Taste 
End Enum 
 
Private Const KEYEVENTF_KEYUP As Long = &H2  ' Taste lösen 
 
Function Taste(vk_Key As vk_Keys, Optional ZusatzKey As vk_Keys = 0) 
    If ZusatzKey > 0 Then 
        keybd_event ZusatzKey, 0, 0, 0 'Taste drücken 
    End If 
 
    keybd_event vk_Key, 0, 0, 0 'Taste drücken 
    keybd_event vk_Key, 0, KEYEVENTF_KEYUP, 0 'Taste loslassen 
 
    If ZusatzKey > 0 Then 
        keybd_event ZusatzKey, 0, KEYEVENTF_KEYUP, 0 'Taste loslassen 
    End If 
End Function 
 
'Beispiel, hier wird die Taste F8 gedrückt 
Sub Beispiel() 
    Taste VK_F8 
End Sub 
 
Gruß Tino
Anzeige
AW: hier ein Beispiel für die Taste F8
30.12.2011 18:11:20
Nibio
Hallo Tino,
herzlichen Dank. Jetzt geht ohne Probleme trotzt Logitech Tastatur :-)
Unglaublich.
Gruß
Nibio

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige