Excel Zellen in bestimmter Reihenfolge mit Tab ansteuern

Hallo,

ich benötige Hilfe bei folgendem Problem. Ich möchte in Excel 2010 in einem Tabellenblatt Zellen (ca. 200 St.) per Tab in einer bestimmten Reihenfolge ansteuern, das Tabellenblatt soll nicht gesperrt sein.

Bei wer weiß was habe ich folgenden VBA Code gefunden:

*> In Modul1:

Option Explicit

Sub tt()
Application.OnKey „{TAB}“, „Huepfe“
End Sub

Sub Huepfe()
Dim Von, Nach, N
Von = Array(„A1“, „A2“, „A3“, „A4“) 'wenn der Cursor hier steht
Nach = Array(„A2“, „A3“, „A4“, „B1“) 'hüpft er nach dort
For N = 0 To UBound(Von)
If Von(N) = ActiveCell.Address(0, 0) Then
Range(Nach(N)).Select
Exit Sub
End If
Next N
ActiveCell.Offset(0, 1).Select 'legt fest wohin Tab normalerweise hüpft
End Sub

Sub Zurücksetzen()
Application.OnKey „{TAB}“, „“
End Sub*

Der Autor (@Reinhard_fb8cb7) schlägt vor beim Ansteuern vieler Zellen eine Hilfstabelle zu verwenden. Leider weiß ich nicht wie der Code dann aussehen müsste.

Ich habe die Hilfstabelle in Tabelle 3 erstellt. Alle VON Zellen stehen in Spalte A (A1:A200) alle NACH Zellen in Spalte B (B1:B200)

Kann mir jemand weiterhelfen?

Silke

Moin,

eine Schleife ersetzt die direkten Zuweisungen.

  Dim Von (1 to 200) as long
  Dim Nach (1 to 200) as long
  dim i as long

  for i = 1 to 200
    Von(i) = tabelle3.cells(i,1)
    Nach(i) = tabelle3.cells(i,2)
  next i

Vorsicht, ungetestet!

Gruß
Rlaf

Hallo Rlaf,

vielen Dank für Deine schnelle Antwort. Code funktioniert leider nicht.

Er sieht bei mir so aus:

Option Explicit

Sub tt()
Application.OnKey „{TAB}“, „Huepfe“
End Sub

Sub Huepfe()
Dim Von (1 to 200) as long
Dim Nach (1 to 200) as long
dim i as long

for i = 1 to 200
Von(i) = tabelle3.cells(i,1)
Nach(i) = tabelle3.cells(i,2)
next i
Next N
ActiveCell.Offset(0, 1).Select 'legt fest wohin Tab normalerweise hüpft
End Sub

Sub Zurücksetzen()
Application.OnKey „{TAB}“, „“
End Sub

Habe ich was falsch gemacht ? Für Deine Hilfe wäre ich dankbar

Silke