Excel: Punkte-Rechner ... Frage an die Excel-Profis ;)

WulfmanGER

Commander
Registriert
Juli 2005
Beiträge
2.414
Hi

eher was für die Excel-Profis ...
ich habe eine Tabelle nach folgenden Muster:

Code:
Punkte	Geschlecht	Alter	50f		1f		2f	...	...	...
20	w		11	00:28,5		01:02,4		02:15,3
19	w		11	00:28,9		01:03,4		02:17,4
18	w		11
...	...		...	...
1	w		11	00:36,8		01:20,8		02:55,1
20	w		10	...		...		...	...


Jetzt soll eine Auswertung gemacht werden. Neue Tabelle:

Code:
Alter		50f		1f		2f
11		00:28,3		01:03,3		02:55,1
Punkte		[20]		[19]		[1] 		<- per Formel


Mit sverweis komme ich so ja nicht weit. Hab kaum eindeutige Identifier ... ausser das Alter ... aber das kommt in der Quell-Tabelle ja auch mehrfach vor. Die Zeiten sind immer höchstwerte. 50f => 00:28,5 => 20Punkte, 00:28,6 => 19 Punkte ... laut offiziellen online-Rechner ist 00:28,5 sogar nur noch 19 Punkte *grübel*

Jemand eine Idee? Das schwere ist ja das ich keine mit der Quell-Tabelle identischen Zeiten bekomme.

Mit "verweis" komme ich der sache zwar näher, allerdings hab ich hier "rundungsfehler" und ich glaub das klappt auch nur in den paar Beispielen so gerade eben ... zufall.

Aus 11 Jahren, 50f => 00:36,7 wird 2 Punkte ... richtig wäre aber 1 Punkt
Aus 11 Jahren, 50f => 00:28,4 wird ein #NV ... sollte aber 20 Punkte geben

Zudem hab ich hier das Problem das bei Suchvektor nur die Zeilen auswähle, die zum Alter passen. Hab natürlich eine Tabelle von 8 bis 18 Jahren. Ist die Person 11 Jahre sieht der verweis so aus: verweis("suchkriterium"; "zeitentabelle spalte:zeilen mit 11 Jahren"; "ergebnisspalte:zeilen mit 11 Jahren"). Ist natürlich auch nicht schön ...

Grüße
 
Mit sverweis kannst du nur eine bestimmte Zahl oder eine Annäherung daran abfragen, aber kein "größ oder kleiner als Suchkriterium".

Da du auch noch mehere Suchkriterien (Alter, Geschlecht und 50f, 1f usw.) hast, geht dies hier aus meiner Sicht nicht mit einer Formel sondern ist nur mit einer VBA Programmierung lösbar.
 
Naja die Suchkriterien lassen sich ja anpassen ... Worstcase ist natürlich ALLES klappt...

Aber im Prinzip reicht es wenn ich die f-Spalten getrennt betrachte. Geschlecht ist unwichtig (separate Tabelle). So hab ich das mit "verweis" ja auch gemacht (nicht sverweis)

Es würde also eigentlich reichen wenn ich folgendes betrachte:


Code:
Punkte	Alter	50f		
20	11	00:28,5		
19	11	00:28,9		
18	11
...	...	...
1	11	00:36,8		
20	10	...

[Formel dafür]

Wenn ich jetzt für 100f eine Berechnung brauche, gehe ich in der gefundenen Formel einfach eine spalte weiter rechts.
Es werden hier für div Personen halt Tabellenblätter angelegt. Alle gleiches Format - alle gleiche Formeln. Ich mache somit bei einer Vorlage bissel arbeit (Spalte für 50f, 100f....) und kopiere die Vorlage einfach x-Mal.

Was aber besonders stört ist das Alter ... das kann ich nicht rausnehmen, dann hat man zuviel Arbeit - man muß jede Person manuell anpacken - die "Suchbereichs-Zeilen" ändern usw.

Also die 3 Spalten müssen bleiben.

Da die Altersspalte ja Variable ist (ist das Kind 8 Jahre isses Zeile 2-21, ist es 9 Jahre 22-41 usw.), hab ich schon fast die Befürchtung das ich um VBA nicht rum komme :( gut das ich das total verlernt habe :|

Leider nicht für mich - sonst würde ist das ganz einfach mit mySQL/php basteln .. Hilfstabelle "altersspezifisch", Wert suchen der am nächsten am Eingabewert ist (try&error: bei allen Zeilen die Zeit von der Vorgabe subtrahieren - das kleinste Ergebnis (+/- ignoriert) entsprechend abgleichen (liegt die Eingabezeit über, drunter dem Wert in der Tabelle, oder ist sogar gleich ... drunter = aktuelle Punkte (ist ja der erlaubte höchstwert); drüber = aktuelle Punkte-1 (mit 0:28,6 bin ich am nächsten an den 20pkt dran, aber drüber - somit nur 19pkt); gleich = aktuelle Punkte-1 (laut offiziellen Rechner) ... wie gesagt: Try&Error ... geht sicher viel einfacher ... *G*) ... aber sowas in VBA umsetzen ... :|
 
Es ist der Bestcase, nicht der Worstcase wenn ALLES funktioniert. :cool_alt:


Wulfman_SG schrieb:
...
Leider nicht für mich - sonst würde ist das ganz einfach mit mySQL/php basteln .. Hilfstabelle "altersspezifisch", Wert suchen der am nächsten am Eingabewert ist (try&error: bei allen Zeilen die Zeit von der Vorgabe subtrahieren - das kleinste Ergebnis (+/- ignoriert) entsprechend abgleichen (liegt die Eingabezeit über, drunter dem Wert in der Tabelle, oder ist sogar gleich ... drunter = aktuelle Punkte (ist ja der erlaubte höchstwert); drüber = aktuelle Punkte-1 (mit 0:28,6 bin ich am nächsten an den 20pkt dran, aber drüber - somit nur 19pkt); gleich = aktuelle Punkte-1 (laut offiziellen Rechner) ... wie gesagt: Try&Error ... geht sicher viel einfacher ... *G*) ... aber sowas in VBA umsetzen ... :|

Hier hab ich dann aufgegeben, das versteht ausser Dir wohl niemand mehr... :freak:

VBA ist nicht so schwer, das könnte man damit auch umsetzten, aber die Zeit und Lust habe ich im Moment nicht. Evtl. findet sich ja noch jemand.

Gruß
 
muß hier auch keiner verstehen - wäre meine sql/php-Lösung ... brauche aber ja eine Excel-Lösung ;)

VBA ist auch nicht schwer - konnte das früher recht gut ... aber dann nicht weiterverfolgt und lieber mit anderen spielsachen rumgespielt *G* ...kann nix mehr :( übel das man sowas so einfach verlernen kann :|
 
Schau dir mal die Erläuterungen zur SVerweis-Funktion unter onlineExcel an.
Dort gibt es m.E. genau das Szenario was du brauchst ... suchen in einem Bereich wenn der Wert nicht übereinstimmt.

"Das 4. Argument Bereich_Verweis ist ein ganz besonderes, weil es optional ist (es muß nicht angegeben werden und kann den Wert Wahr oder den Wert Falsch haben."
 
Hi

danke für den Tip ;) Hilft hier leider nicht weiter ... Ist der Suchwert 0:35,1 ... aber in der Tabelle geht es erst mit 0:35,7 los, bekomme ich ein #nv ... Für Excel ist der niedrigste Wert aber gleich Anfangswert ... Zudem bewertet Excel die Werte nicht so wie gewünscht. Excel guckt wo man am nächsten dran ist ...

Code:
20	11	00:28,5	
19	11	00:28,9
suche ich also 0:28,6 sagt Excel: 20 ... das ist aber falsch. für 20 Punkte darf man nicht über 0:28,5 sein.

=> SVERWEIS hilft hier nicht :| ... aber die Erklärung mit dem WAHR auf der Seite ist super ;) Das hilft mir zumindest in anderen Bereichen weiter ;)

Denke mit VBA bin ich da besser bedient. Nächste Woche ist nen Kollege von mir wieder auf Arbeit ... der kennt sich gut aus mit VBA ... hol mir dann mal nen Crashkurs bei ihm ... 30-60min sollten hoffentlich reichen um wieder rein zu kommen (früher war ich wie gesagt sehr fit drin)

Grüße
 
Zurück
Oben