Thema: Excel: Nach einer Zeicheneingabe soll Excel automatisch in die nächste Zelle springen


Seite durchsuchen:
Home


zurück zur Übersicht

Diskussionsgruppe: Tabellenkalkulation

Hallo,

Folgendes Problem:

Ich habe eine Tabelle in der ich in jede Zelle nur ein Zeichen schreiben soll. Jetzt wäre es sehr hilfreich wenn nach Eingabe eines Zeichens, Excel automatisch in die nächste Zelle springt.

Gibt es dafür eine Lösung?
Danke im Voraus

LG Stefan

Von: stefann Datum: 23.02.2007, 10:10

alle Antworten zu dieser Frage




Antwort 1 von Tomschi vom 23.02.2007, 22:01
Hi Stefan!

Im Normalfall kannst Du dies unter Extras --> Optionen --> Reiter Bearbeiten --> "Markierung nach dem Drücken der Eingabetasten verschieben" einstellen.

Frage:
Was genau ist Deine nächste Zelle?
Soll der Cursor z. B. in eine bestimmte andere Zelle springen, dann könntest Du eventuell mit einem Blattschutz und entsperrten Zellen arbeiten.

Ciao

Tom

Antwort 2 von Hajo_Zi vom 24.02.2007, 07:34
Hallo Tom,

ich habe es so gelesen das nach Eingabe von 1 Zeichen Excel in die nächste Zele springt (es ist nicht kalr welch), aber ich habe es so gesehen das dies ohne Enter passieren soll.

Gruß Hajo

Antwort 3 von nighty vom 24.02.2007, 11:45
hi all :)

2 beispiele fuer eine erzwungene eingabe :-)

gruss nighty

Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
With Worksheets(1)
Dim bereich(2)
Dim zaehler1 As Integer
bereich(0) = "A1"
bereich(1) = "A3"
bereich(2) = "A5"
For zaehler1 = 0 To 2
If Range(bereich(zaehler1)) = "" Then
Range(bereich(zaehler1)).Select
Exit For
End If
Next zaehler1
End With
End Sub


Private Sub Worksheet_SelectionChange(ByVal Target As Excel.Range)
Dim rgBereich As Range
Dim zaehler1 As Range
Set rgBereich = Worksheets("Tabelle1").Range("A1,A3,A5")
For Each zaehler1 In rgBereich
If zaehler1 = "" Then
zaehler1.Select
Exit For
End If
Next zaehler1
End Sub

Antwort 4 von nighty vom 24.02.2007, 11:47
hi all :-)

einzufuegen

alt f11/projektexplorer/DeineTabelle

gruss nighty

Antwort 5 von Tomschi vom 24.02.2007, 22:07
Hi Hajo!

Tja, so unterschiedlich kann man es auffassen.

Wenn ich nochmals die Fragestellung von Stefan durchlesen, dann könntest Dur Recht haben mit Deiner Vermutung.

Ciao

Tom

Antwort 6 von nighty vom 24.02.2007, 23:40
hi hajol :)

wenn das so stimmen sollte,geht glaub ich nicht oder

gruss nighty

Antwort 7 von fürLau vom 24.02.2007, 23:48
Hi.;-)

hätte da einen Ansatz zu:

Option Explicit
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Rem eine Taste wurde gedrückt
If KeyAscii = 27 Then
Stop
End If
TextBox1.Text = Chr(KeyAscii)
End Sub
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim Brng As Range, Arng As Range, TNstr As String
Static Tstr As String
Set Arng = Range("A3:AA3")
Rem Nur im Bereich A3:Z3 (zwei Zeilen)
Set Brng = Application.Intersect(Target, Arng)
If Brng Is Nothing Then
Exit Sub
Else
TextBox1.Height = Target.Height + 0.5
TextBox1.Width = Target.Width + 0.5
TextBox1.Left = Target.Left + 1
TextBox1.Top = Target.Top + 1
TextBox1.LinkedCell = Target.Address
TextBox1.Text = TNstr
TextBox1.MaxLength = 1
TextBox1.Activate
Do
DoEvents
Set Brng = Application.Intersect(Arng, Range(ActiveCell.Address))
Debug.Print ActiveCell.Address, Arng.Address
If Brng Is Nothing Then Exit Do
Loop Until TextBox1.TextLength = 1
Rem nächstgelegene rechte Zelle auswählen
Cells(Target.Row, Target.Column + 1).Select
Tstr = Selection.Text
End If
Set Brng = Nothing
Set Arng = Nothing
TextBox1.SendToBack
End Sub


Leider noch nicht vollständig!
to be continued

Antwort 8 von fürLau vom 24.02.2007, 23:58
grunzer

Antwort 9 von fürLau vom 25.02.2007, 00:08
Die enthaltenen Lösungen werden den geneigten Betrachtern wohl vorenthalten bleiben...

Lang lebe Deutschland....

Antworten der Gruppe: Tabellenkalkulation
www.supportnet.de







Office 365 stellt vertraute Microsoft Office-Tools für die Zusammenarbeit und Produktivität über die Cloud bereit. So können alle ganz einfach von nahezu überall zusammenarbeiten und auf E-Mails, Webkonferenzen, Dokumente und Kalender zugreifen.

07111 07112 07113 07114 07115 07116 07117 07118