2.2k Aufrufe
Gefragt in Tabellenkalkulation von benjaminm Mitglied (631 Punkte)
Hallo Ex(cel)perten,

ich hab da mal was....

Ich möchte eine Tabelle erstellen für die Fussball-Jugend.

Erstes Tabellenblatt, alle Spieler mit Namen und Anschrift, und das Geburtsjahr.

Nun soll Excel an Hand der Session die Jahrgänge dem jeweiligen Tabellenblatt(F-Jugend; E-Jugend; D-Jugend; C-Jugend; B-Jugend; A-Jugend & Senioren) zuordnen und dort auch hinkopieren.

Ist das machbar?

Also, momentan Session 2008/2009 nun sollen alle 6-8 jährigen in die F-Jugend, alle 8-10 jährigen in die E-Jugend, alle 10-12 jährigen in die D-Jugend, alle 12-14 jährigen in die C-Jugend, alle 14-16 jährigen in die B-Jugend, alle 16-18 jährigen in die A-Jugend und alle darüber in die Senioren.(immer z.B. 6-U8, mit 8oder darüber wieder eine Klasse höher)

Wenn ich dann in der "Master" Tabelle die Session ändere, sollen die Spieler automatisch(wenn sich vom Alter was ändert) in das jeweilige nächste Blatt verschoben werden.
So das ich immer gleich weiß wer wann in welcher Klasse spielt.

Wenn ihr da nen Lösungsansatz habt wäre ich euch überaus dankbar!

MfG Benjae

3 Antworten

0 Punkte
Beantwortet von saarbauer Profi (15.6k Punkte)
Hallo,

ohne den Tabellenaufbau zu kennen wird es wohl mit einem Vorschlag nichts werden.

Du solltest ein Beispiel zur Verfügung stellen

Gruß

Helmut
0 Punkte
Beantwortet von benjaminm Mitglied (631 Punkte)
Hier mal eine Beispiel Tabelle....
0 Punkte
Beantwortet von coros Experte (4k Punkte)
Hallo Benjamin,

nachfolgend mal ein Makro, dass anhand einer Schleife in dem Tabellenblatt "Tabelle1" in Spalte D ermittelt, ob ein Datumswert vorhanden ist. Wenn ja, wird das Alter ausgerechnet und festgelegt, in welches Blatt der Name gehört. Danach wird die Zeile in das entsprechende Tabellenblatt in die 1. freie Zeile kopiert.

Kopiere das Makro in ein StandardModul und starte es z.B. über eine Befehlsschaltfläche
Teste das Makro aber bitte in einer Testdatei und nicht gleich in Deiner Originaldatei.

Option Explicit

Sub A()
Dim intRow As Integer
Dim strSheetName As String
Dim intFirstCells As Integer

Application.ScreenUpdating = False

For intRow = 11 To Sheets("Tabelle1").Range("A65536").End(xlUp).Row
If IsDate(Sheets("Tabelle1").Cells(intRow, 4)) Then
Select Case DateDiff("yyyy", Sheets("Tabelle1").Cells(intRow, 4), Now)
Case 6 To 7
strSheetName = "F-Jugend"
Case 8 To 9
strSheetName = "F-Jugend"
Case 10 To 11
strSheetName = "D-Jugend"
Case 12 To 13
strSheetName = "C-Jugend"
Case 14 To 15
strSheetName = "B-Jugend"
Case 16 To 18
strSheetName = "A-Jugend"
End Select
intFirstCells = Sheets(strSheetName).Range("A94").End(xlUp).Offset(1, 0).Row
Sheets("Tabelle1").Rows(intRow).Copy
Sheets(strSheetName).Cells(intFirstCells, 1).PasteSpecial
End If
Next
End Sub

Wobei ich nicht ganz verstanden habe, warum in Deiner Beispieldatei einige Zeilen mit Spielern ausgeblendet sind. Mit obigem Makro werden aber auch die ausgeblendeten Namen mit berücksichtigt.

Solltest Du nicht wissen, wie Du den Code in Deine Datei bekommst, dann schau mal auf meiner HP in der Rubrik Anleitungen und dort dann in der Anleitungsnummer 3 nach. Dort stelle ich dazu eine bebilderte Anleitung zur Verfügung, die Dir sicherlich helfen wird.

Bei Fragen melde Dich.

MfG,
Oliver
[sub]Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du[/sub]
[sup] ein Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.[/sup]
...