Bilder-Pyramide als Rangliste

@ alle Excel-Experten!

Ich habe für das Tischtennis-Jugendtraining eine Rangliste mit Excel gebaut. Jetzt würde ich gerne Bilder , die ich von den Kindern gemacht habe, visuell als „Ranglisten“-Pyramide darstellen. Kann man es so programmieren, dass Excel die Bilder aufgrund der Basis einer bestehenden Rangliste sortieren?!?

Dank & Gruß
Daniel

Ich habe für das Tischtennis-Jugendtraining eine Rangliste mit
Excel gebaut. Jetzt würde ich gerne Bilder , die ich von
den Kindern gemacht habe, visuell als „Ranglisten“-Pyramide
darstellen
. Kann man es so programmieren, dass Excel die
Bilder aufgrund der Basis einer bestehenden Rangliste
sortieren
?!?

Moin Daniel,
wie soll denn die Pyramide aussehen? Du hast ja ggfs. mehrere
Leute auf den gleichen Plätzen, also geht das folgende so nicht:

 1
 2 3
 4 5 6
 7 8 ...
soll es denn so aussehen:
Platz Bild(er)
 1 Max Hans Lisa
 2 Anton
 3 Fritz Daniel

ich hatte dir für deine letzte Anfrage (Rangliste) am 6.11 ein Makro gebastelt. Jetzt weiss ich nicht, hattest du es gelesen/ausprobiert, funktionierte es in deinem Sinne oder nicht…?
Foren leben auch von Rückmeldungen
Gruß
Reinhard

genauso wars gemeint, aber wie ?!?
Moin Reinhard,

habe ich dir wirklich nicht zurückgeschrieben? Ich meine schon. Dann an dieser Stelle nochmal danke für die Antwort! Ich habe das Problem von damals gelöst bekommen ;-
Ich kann mir den Thread nicht mehr angucken, da ich nicht weiß, wie ich ältere Artikel anwählen kann … Ich sehe nur die letzten 20-30 Postings?

1
2 3
4 5 6
7 8 …
soll es denn so aussehen:
Platz Bild(er)
1 Max Hans Lisa
2 Anton
3 Fritz Daniel

Genau so hatte ich mir das vorgestellt. Es sollen die Daten aus der Rangliste verwendet werden und daraus eine Bilder-Pyramide, wie Du aufgezeichnet hast, erstellt werden. Das Problem der Reihenfolge könnte ich umgehen, wenn ich nicht die Plätze der Kinder benutze, sondern die Reihenfolge der Namen aus der Rangliste. Es kann zwar zu leichten Ungerechtigkeiten führen, wenn gleiche Plätze vergeben sind, aber dafür wäre die visuelle Darstellung eine feine Sache :wink:

Viele Grüße,
Daniel

habe ich dir wirklich nicht zurückgeschrieben? Ich meine
schon. Dann an dieser Stelle nochmal danke für die Antwort!
Ich habe das Problem von damals gelöst bekommen ;-
Ich kann mir den Thread nicht mehr angucken, da ich nicht
weiß, wie ich ältere Artikel anwählen kann … Ich sehe nur
die letzten 20-30 Postings?

Moin Daniel,
du kannst links auf „Meine Artikel“ klicken, dann findest du deine
Artikel und die Antworten dazu. Oder nach BetreffWorten (Rangliste
nach wert sortieren o.ä.) im Archiv suchen.
Wo/wie siehst du nur die letzten 20-30 Postings?

Genau so hatte ich mir das vorgestellt. Es sollen die Daten
aus der Rangliste verwendet werden und daraus eine
Bilder-Pyramide, wie Du aufgezeichnet hast, erstellt werden.

Ich habe dir ein Makro gebastelt. Nimm erst mal eine leere Tabelle
zum Üben. In Tabelle3 im Bereich A1-C7 trägst du folgendes ein:

max 3 d:\eigene dateien\eigene bilder\che.gif
lisa 3 d:\eigene dateien\eigene bilder\che.gif
hans 4 d:\eigene dateien\eigene bilder\che.gif
petra 1 d:\eigene dateien\eigene bilder\che.gif
klaus 2 d:\eigene dateien\eigene bilder\che.gif
thomas 1 d:\eigene dateien\eigene bilder\che.gif
sybille 3 d:\eigene dateien\eigene bilder\che.gif
und änderst in C die Pfade zu den Bildern.

Dann wechselst du auf Tabelle1 und rufst das folgende Makro auf. Das anschliessende Loeschmakro dient nur zum Löschen
beim Austesten.
Gruß
Reinhard

Sub Makro1()
Bildhöhe = 100
Bildbreite = 100
VA = 10 'vertikale Anzahl zellen zwischen den Bildern
HA = 2 ' horizontale Anzahl Zellen zwischen den Bildern
Dim HP() ' Position der Bilder in einer Reihe
anz = Worksheets("Tabelle3").Range("a35536").End(xlUp).Row 'Anzahl Einträge in Rangliste
ReDim HP(anz)
For n = 1 To anz
 HP(n) = 3 '3=Spalte C
 For m = 1 To n - 1
 If Worksheets("Tabelle3").Cells(m, 2) = Worksheets("Tabelle3").Cells(n, 2) Then
 HP(n) = HP(n) + HA
 End If
 Next m
Next n
 For n = 1 To anz
 ActiveSheet.Pictures.Insert(Worksheets("Tabelle3").Cells(n, 3)).Select
 Selection.Top = Worksheets("Tabelle1").Cells((Worksheets("Tabelle3").Cells(n, 2) - 1) \* VA + 1, 3).Top
 Selection.Left = Worksheets("Tabelle1").Cells(1, HP(n)).Left
 Selection.Height = Bildhöhe
 Selection.Width = Bildbreite
 Cells((Worksheets("Tabelle3").Cells(n, 2) - 1) \* VA + 9, HP(n)) = Worksheets("Tabelle3").Cells(n, 1)
 Next n
Range("a1").Select
End Sub



Sub Loesche()
 Dim bild As Shape
 For Each bild In ThisWorkbook.Worksheets("Tabelle1").Shapes()
 bild.Delete
 Next bild
ThisWorkbook.Worksheets("Tabelle1").UsedRange.ClearContents
End Sub

DANKE! Die erste Ranglisten-Variante schon online

du kannst links auf „Meine Artikel“ klicken, dann findest du
deine
Artikel und die Antworten dazu. Oder nach BetreffWorten
(Rangliste
nach wert sortieren o.ä.) im Archiv suchen.

Moin Reinhard,
die Funktion „Meine Artikel“ kannte ich gar nicht. Ist ja super praktisch :wink:

Wo/wie siehst du nur die letzten 20-30 Postings?

Wenn ich ins Forum gehe, dann werden rechts obene die aktuellen Postings gezeigt. Das meinte ich mit 20-30 …

Ich habe dir ein Makro gebastelt. Nimm erst mal eine leere
Tabelle
zum Üben.

Suppi, VIELEN DANK! Ich habs vorhin ausprobiert und es klappt einwandfrei. Allerdings muss ich jetzt gucken, dass ich es irgendwie an meine Rangliste anpaasen kann. Da ich absoluter VB-Anfänger bin, wird das nicht so einfach. Danke übrigens auch für die paar auskommentierten Zeilen.
Die erste Online-Variante der Rangliste ist zwar noch nicht auf unserer Seite, habe ich aber zu Testzwecken schon mal auf eine andere Page hochgeladen:
http://www.clan-da.de/rangliste/Ergebnisse.htm
http://www.clan-da.de/rangliste/Top15.htm

Für die Bilder-Pyramide wollte ich wahrscheinlich die „Spiele“-Statistik als Grundlage verwenden oder meinst Du, ich sollte lieber einen Mix aus allen Vieren nehmen?

Gruß Daniel