Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1000to1004
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

Schnellerfassung in Excel

Schnellerfassung in Excel
21.08.2008 10:10:48
Wolli
Hallo zusammen.
Versuche eine Schnellerfassung in Excel zu bauen ohne ein Formular zu bemühen.
Es geht um das Auswerten von Schulungsfeedbackbögen.
12 ja/nein - Fragen.
Also Antwort immer 1 oder 0! (einstellige Eingabe).
Der Ablauf soll so sein, daß Excel sofort in die naechste Zeile springt wenn ein Zeichen eingegeben wird.
Somit würde man sich bei jeder Eingabe das drücken der ENTER - Taste sparen. Das sind dann bei 1000 Schulungen rund 10000 Tastendrücke weniger!
Würde mich sehr über eine brauchbare Antwort freuen.
Lieben Dank im voraus,
Wolli

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schnellerfassung in Excel
21.08.2008 11:30:00
Heiko
Hallo Wolli,
also wenn du nur die Tasten 1 und Null willst z.B. so:
Ist als Anregung zu verstehen, mal ein leeres Tabellenblatt öffnen Code starten und Tasten drücken.
Option Explicit
Private Declare

Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Const VK_ESC = &H1B   'Taste ESC
Private Const VK_0 = &H30     'Taste 0
Private Const VK_1 = &H31     'Taste 1


Sub Nur_0_1()
Application.StatusBar = "Nur Tasten 0 und 1, Beenden mit [ESC]"
Do
If GetAsyncKeyState(VK_0) = -32767 Then
ActiveCell = "0"
ActiveCell.Offset(1, 0).Activate
End If
If GetAsyncKeyState(VK_1) = -32767 Then
ActiveCell = "1"
ActiveCell.Offset(1, 0).Activate
End If
Loop While Not GetAsyncKeyState(VK_ESC) = -32767
Application.StatusBar = False
End Sub


Andere Idee, erstmal alles mit 0 oder 1 auffüllen und dann per Maus (Über SelectionChange) die Felder anwählen die halt geändert werden müssen.
Gruß Heiko
PS: Rückmeldung wäre nett !

Anzeige
AW: Schnellerfassung in Excel
21.08.2008 13:42:00
Heiko
Hallo Wolli,
kann ich selber brauchen, darum hier eine etwas weiter entwickelte Version.
Option Explicit
Private Declare

Function GetAsyncKeyState Lib "user32" (ByVal vKey As Long) As Integer
Private Const VK_ESC = &H1B   'Taste ESC
Private Const VK_0 = &H30     'Taste 0
Private Const VK_1 = &H31     'Taste 1
Private Const VK_PLI = &H25   'Taste Pfeil Links
Private Const VK_PRE = &H27   'Taste Pfeil Rechts
Private Const VK_PRA = &H26   'Taste Pfeil Rauf
Private Const VK_PRU = &H28   'Taste Pfeil Runter


Sub Nur_0_1()
Dim varHelp As Variant
Dim strHelp As String
Application.StatusBar = "Nur Tasten 0 und 1, Beenden mit [ESC]"
Do
If GetAsyncKeyState(VK_0) = -32767 Then
ActiveCell = "Nein"
ActiveCell.Offset(1, 0).Activate
End If
If GetAsyncKeyState(VK_1) = -32767 Then
ActiveCell = "Ja"
ActiveCell.Offset(1, 0).Activate
End If
If GetAsyncKeyState(VK_PLI) = -32767 Then
If ActiveCell.Column > 1 Then
ActiveCell.Offset(0, -1).Activate
End If
End If
If GetAsyncKeyState(VK_PRE) = -32767 Then
If ActiveCell.Column  1 Then
ActiveCell.Offset(-1, 0).Activate
End If
End If
If GetAsyncKeyState(VK_PRU) = -32767 Then
If ActiveCell.Row 


Gruß Heiko
PS: Rückmeldung wäre nett !

Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige