Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1928to1932
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Daten zuordnen

Daten zuordnen
01.05.2023 09:59:13
Fred


Hallo Excel Experten,
ich näher mich dem Ende meiner Modul(itäten)

Ich habe in Sheet "Listen_10" in Spalte "A" Vereinsnamen und Sp. "Q:AO" Werte.
In Sheet "Spiele" stehen Spielpaarungen denen diese Werte zugeordnet werden sollen.
Für das HeimTeam sollen die Werte ab Sp. "H",- und für das GastTeam ab Sp. "AG" übertragen werden
Beispiel Sheet mit "Wunschergebnis":
https://www.herber.de/bbs/user/158975.xlsb
Ich weis schon lange, daß ich größte Probleme mit dem Verständnis für "Offset, Resize etc" habe und wohl auch in dem gewünschten Makro wird dies wohl für einen Excel-Profi "erste Wahl" darstellen ....

Gruss
Fred

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Daten zuordnen
01.05.2023 10:27:26
Oberschlumpf
Hi Fred,

kann es sein, dass du in Tabelle "Listen 10" die Daten für diese Zuordnungen vergessen hast?

ID Tag Zeit round league home away

Zumindest ich (von Fußball fast keine Ahnung...von ausländischen Ligen schon gar nich! :-) ) kann in Tabelle "Listen 10" nicht erkennen, wer wann und wo gegen wen spielt.

Also wer ist Home, wer ist away?
An welchen Tagen wird gespielt?
Woher kenn ich die ID und in welcher Liga wird gespielt?

Ich frag deswegen so detailliert nach, weil DU schreibst, die Zeilen in Tabelle "Listen 10" können variieren - dieser Hinweis bedeutet für mich...
...vielleicht andere Liga mit mehr/weniger/ANDERE??? Mannschaften. Deine "Vorlage" in Spiele ist zumindest für mich nicht hilfreich, da diese ja aktuell nur die vorhandenen Einträge aus "Listen 10" widerspiegelt - wenn aber eben mehr/weniger/ANDERE??? Mannschaften...was dann?

Na ja, welche IDs wer bekommt, welcher Tag, wer ist Heim/wer Gegner kann ich gar nicht erkennen.

Vllt zeigst du, wenn erforderlich, noch mal per Upload eine Bsp-Datei, in der auch in "Liste 10" alle erforderlichen Daten enthalten sind.
WENN aber tatsächlich ICH wirklich zu wenig Ahnung von Fußball hab :-)), bitte dann erklär, wie ich die "fehlenden?" Infos korrekt nach "Spiele" übertragen kann.

Ciao erst mal
Thorsten


Anzeige
AW: Daten zuordnen
01.05.2023 10:28:13
Alwin WeisAngler
Hallo Fred,
dazu braucht es kein VBA, sondern es geht problemlos mit SVERWEIS.
Das Einzige was man mit VBA machen könnte wäre, wenn sich die Zeilenzahl in der Ausgabe ändert, die Formeln in die Zellen schreiben.
https://www.herber.de/bbs/user/158978.xlsb
Gruß Uwe


AW: Daten zuordnen
01.05.2023 11:05:15
Fred
Hallo Alwin,
die Lösung übernehme ich!
Meine eigentliche Arbeitsmappe wird merklich langsamer durch die vielen Formel-Lösungen. Daher wollte ich zukünftige "Module" und deren Berechnungen im Makro bearbeiten und als Zellinhalt nur den Wert ...
Ich schreibe die eigentlich recht einfache Formel in ein Makro (Formulalocal ....) und habe dann "meine" VBA-Lösung.
Vielen Dank für den Denkanstoß ...
und schönen Feiertag!

Gruß
Fred


Anzeige
AW: Daten zuordnen
01.05.2023 11:37:33
Jan
Hallo

Ich würde es ohne VBA als alternative mit Power Query lösen.


AW: Daten zuordnen
01.05.2023 11:39:29
Oberschlumpf
und bitte WIE?


AW: Daten zuordnen
01.05.2023 13:22:31
Fred
Hallo Jan,
vielen Dank für deine Mühe
"Auch" ein starker Ansatz!!

Gruss
Fred


AW: Daten zuordnen
01.05.2023 13:45:11
Alwin WeisAngler
Falls das mit SVERWEIS zu langsam ist, dann per VBA so:

Sub SpieleLaden()
    Dim arrIn(), arrAus(), ArrHome(), ArrAway(), arrAusHome(), arrAusAway(), i&, j&
    Tabelle1.Range("H11:BE" & Tabelle1.Cells(Rows.Count, 8).End(xlUp).Row).ClearContents
    arrIn = Tabelle5.Range("A2:AO" & Tabelle5.Cells(Rows.Count, 1).End(xlUp).Row).Value
    arrIn = Application.Index(arrIn, Evaluate("row(1:" & UBound(arrIn, 1) & ")"), Array(1, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41))
    ArrHome = Tabelle1.Range("F11:F" & Tabelle1.Cells(Rows.Count, 6).End(xlUp).Row).Value
    ArrAway = Tabelle1.Range("G11:G" & Tabelle1.Cells(Rows.Count, 7).End(xlUp).Row).Value
    ReDim arrAus(1 To UBound(ArrHome), 1 To 50)
    For i = 1 To UBound(ArrHome)
        For j = 1 To UBound(arrIn)
            If ArrHome(i, 1) = arrIn(j, 1) Then
                ReDim arrAusHome(1 To UBound(ArrHome), 1 To 26)
                arrAusHome = Application.Index(arrIn, Evaluate("row(" & j & ":" & j & ")"), Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26))
            End If
        Next j
        For j = 1 To UBound(arrIn)
            If ArrAway(i, 1) = arrIn(j, 1) Then
                ReDim arrAusAway(1 To UBound(ArrAway), 1 To 26)
                arrAusAway = Application.Index(arrIn, Evaluate("row(" & j & ":" & j & ")"), Array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26))
            End If
        Next j
        For j = 1 To 25
            arrAus(i, j) = arrAusHome(j + 1)
            arrAus(i, j + 25) = arrAusAway(j + 1)
        Next j
    Next i
    Tabelle1.Range("H11").Resize(UBound(arrAus, 1), UBound(arrAus, 2)) = arrAus
End Sub
Zu beachten ist, da ich keine Lust hatte noch ein paar Schleifen zwischen den Übergaben in den Arrays zu schreiben, wird diese Prozedur nur funktionieren, wenn die Spalten der Tabellenblätter im A B C Format also kein Haken im Z1S1 Bezugsart eingestellt sind.
https://www.herber.de/bbs/user/158985.xlsb
Gruß Uwe


Anzeige
AW: Daten zuordnen
01.05.2023 14:11:45
Fred
Hallo Alwin,
da mehr als 200 Ligen pro Spieltag so zusammen geführt werden, ist dafür dein "Monster-Code" sicherlich besser geeignet als wie zB die "erste Formel-Version".
Also, werde ich meine Aufgaben entsprechend nochmals ändern. Zwar ist dein Makro für mich so ein "Buch mit sieben Siegeln", allerdings werde ich diesen Vorgang die nächsten Monate nicht ändern.
Vielen Dank das du "dran geblieben bist"
und schönen Feiertag!

Gruss
Fred


AW: Daten zuordnen
01.05.2023 14:22:58
Alwin WeisAngler
naja, sieht vielleicht durch Spaltennummern in den Arrays schlimmer aus als es ist.
So spart man sich ein paar Schleifen und es geht schneller.
Es dürfte so auch bei großen Datenmengen recht flott bleiben, dass außer on Block leeren und on Block schreiben nichts einzeln in den Zellen übergeben wird.

Gruß Uwe

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige