Tabelle mit Variable ansprechen
#1
Servus Excel Freunde

zu erst mal für heute einen guten Rutsch

und nun mein Problem ich möchte verschiedene Tabellenblätter mittels Variable
in dieser Form        Sheets("Spieltag & i & "+" & i+1")  das Original Tabellenblatt dafür heißt      Spieltag 1+3


ansprechen jedoch erkennt Excel das Blatt nicht Laufzeitfehler =Index außerhalb des gültigen Bereich
was ja soviel heißt dass Tabellenblatt existiert nicht, was aber existiert oder der Name ist Falsch
Was mache ich bei der Syntax Sheets("Spieltag & i & "+" & i+1") falsch


Vielen Dank im Vorraus für die Hilfe Huh
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#2
Hallo!
Die Variable darf nicht innerhalb des Strings stehen!
Folgendes aktiviert die Tabelle Spieltag 1+3:
Code:
Sub Test()
Dim i As Integer
i = 1
Worksheets("Spieltag " & i & "+" & i + 2).Activate
End Sub

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#3
Danke Ralf für die schnelle Antwort die gute Nachricht ist bei der Tabelle Spieltag 1+3 funktioniert der Code
sobald ich ihn aber auf  die nächste Tabelle habe insgesamt 17 davon zb  Spieltag 5+6 anwenden will habe ich das gleiche Problem wieder was ich gar nicht verstehen kann

Zur weiteren Erläuterung ich beziehe i aus einem Textfeld einer Userform

Sub TabellenFinden()
I = Me.TxtSpieltagWahl.Value
   Worksheets("Spieltag " & I & "+" & I + 1).Activate
End Sub

ich komm einfach nicht drauf
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#4
Hallo ich glaube das der Fehler bei mir Hausgemacht denn bei allen anderen Blättern Funktioniert der Code

Nur bei Blatt Spieltag 5+6 nicht mir fällt zwar bisher nicht auf warum werde das Blatt mal umbenennen

Trotzdem nochmal Danke und


Einen guten Rutsch :18: :18: Thumps_up
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#5
Eine arithmetische Folge muss natürlich gegeben sein …
ST 1+3
ST 4
ST 5+6
ist jedenfalls keine.
(lade mal Deine Mappe hoch, dann kann ich mal schauen, was machbar ist)

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#6
Servus

Also ich habe das Blatt nochmals als Spieltag 5+6 benannt nun klappt es konnte ja eigentlich nix anderes sein
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#7
Hallo Ralf würde die Mappe gerne Hochladen nur wie weiß ich nicht wo finde ich den Button dafür ?

ich habe ja noch ein zweites Problem wie ich ja schon erwähnte kommt die Variable I vom Textfeld einer User form
es funktioniert alles einwandfrei solange der User immer die erste Bezeichnung der Tabelle eingibt zb: 1-3-5-7-9 usw.
gebe ich aber eine gerade zahl ein dann ist es Vorbei mit meiner Herrlichkeit und der Fehler ist wieder da
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#8
Hi Freddy!
Du nimmst ja dankenswerterweise den Antworten-Button.
Dort steht dann unten bei Attachments: Datei auswählen

Näheres auch hier:
http://www.clever-excel-forum.de/Thread-...ng-stellen

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Top
#9
Hallo Ralf

Ich denke ich habe die Mappe Hochgeladen
[attachment=3723]
Grüße
aus dem schönen Bayern

Freddy

Excel 2013 Win8
Top
#10
Hallo Freddy,

ein kleiner Hinweis am Rande. Bei solch einer

Code:
Public Spieltag, Rahmen1, o, p, c, r, w, X, I, Y, z, WKSE, StTabelle(), SpielTagBlaetter, sSuchbegriff, Byi As Byte

Codezeile ist nur die Variable Byi vom Typ Byte, die anderen haben alle den Typ Variant. Zu deinem Problem: Wo bzw. wann kommt die Fehlermeldung? wie heißt sie und welche Codzeile ist markiert? Wobei ich mir vorstellen könnt, das es hier kracht

Code:
If I = SpieltagNr Or I = SpieltagNr + 1 Then
   Worksheets("Spieltag " & I & "+" & I + 1).Activate
  
End If

ich weiß jetzt nicht, wo die Variable i gefüllt wird, aber gehe mal das gedanklich durch, wenn i eine ungerade Zahl ist und wenn i eine gerade Zahl ist.
Gruß Stefan
Win 10 / Office 2016
Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste