Excel, automatischer Zellensprung

  • #1
B

Bulli

Mitglied
Themenersteller
Dabei seit
17.11.2002
Beiträge
24
Reaktionspunkte
0
Hallo Leute,
wieder möchte ich für meine Arbeitsmappen eine Erleichterung bei der Bearbeitung und weiß nicht wie. Da Ihr mir bis jetzt jedes Mal weiterhelfen konntet, erkläre ich Euch mein Problem:
Ich muß in einer Tabelle mit 16 Spalten (B bis Q) pro Spalte 10 Werte eingeben. Nach dem 10. Wert soll die Bearbeitung automatisch in der nächsten Spalte fortgesetzt werden. Bsp: Ich beginne in Zelle B2 und gebe 10 Werte ein. Ende also Zelle B11. Nun möchte ich in C2 den nächsten Wert eingeben. Der Umbruch von B11 nach C2 und danach C11 nach D2 usw. soll automatisch erfolgen.
 
  • #2
Ola,

nix einfacher als das: Beim Zeilenweisen eingeben der Daten bestätigst Du die Eingabe mit der Tab-
Taste. Wenn Du dann in der letzten Zelle die Entertaste nimmst, springt der Zellzeigerautomatisch in die Zelle der nächsten Zeile, wo du begonnen hast, mit tab zu bestätigen....
 
  • #3
Hallo,
ich glaube, ich bin da missverstanden worden. Ich möchte nachdem ich die Werte von Zelle B2 bis B11 eingegeben habe einen automatischen Sprung von Zelle B11 nach C2 machen. Wenn ich wiederum von Zelle C2 meine Eingaben bis Zelle C11 gemacht habe soll der Sprung nach Zelle D2 stattfinden usw. Ich hoffe es wird nun deutlicher
 
  • #4
Hallo Bulli,

füge den untenstehenden Makro im VB-Editor zu deinem Arbeitsblatt (nicht in ein Modul !):

Funktion:
a) er überwacht die Änderungen von Zellen in dem Arbeitsblatt, in dem er eingefügt ist.
b) bei Änderungen prüft er, ob auch wirklich nur eine Zelle geändert wurde (z.B. nicht der Fall beim Löschen mehrerer Zellen)
c) prüft, ob die geänderte Zelle in Zeile 11 liegt. Wenn ja selektiert er in der nächsten Spalte die 2. Zeile.

Gruß Matjes :)

Code:
Private Sub Worksheet_Change(ByVal Target As Range)

'Target   Der geänderte Bereich. Er kann mehr als eine Zelle umfassen.

  Dim zelle As Range
  Dim r As Long, c As Long, anz As Long
  
  anz = 0
  For Each zelle In Target
    anz = anz + 1
  Next
  If anz = 1 Then 'nur wenn eine Zelle geändert wurde
    For Each zelle In Target
      If zelle.Row = 11 Then 'Zeile 11 ?
        'in nächste Spalte Zeile 2 springen
        Cells(2, zelle.Column + 1).Select
      End If
    Next
  End If
End Sub
 
  • #5
Hallo Matjes,
zuerst Danke für die schnelle und kompetente Hilfe. Ich habe dabei nur noch ein Problem. Auf diesem Blatt habe ich schon ein Makro (übrigens auch von Dir) mit folgendem Eintrag:

Private Sub Worksheet_Activate()
Application.MoveAfterReturnDirection = xlDown
End Sub

Kann ich diese Makros irgendwie verbinden??

Gruß Michael
 
  • #6
Hi Bulli,

jo kannst Du. Einfach untereinanderschreiben. Sie kommen sich nicht in die Quere.
Code:
Private Sub Worksheet_Activate()
...
End Sub

Private Sub Worksheet_Change(ByVal Target As Range)
...
End Sub

Gruß Matjes :)
 
  • #7
Hallo Matjes,

danke für Deine Hilfe. Es hat super funktioniert. Vielleicht begreife ich es ja auch irgendwann. Man soll die Hoffnung ja nicht aufgeben.

Danke
 
Thema:

Excel, automatischer Zellensprung

ANGEBOTE & SPONSOREN

Statistik des Forums

Themen
113.840
Beiträge
707.965
Mitglieder
51.494
Neuestes Mitglied
Flensburg45
Oben