PNG32 PNG32 PNG32 PNG32
PNG32
Forum Excel, VBA, VSTO, Exceltips, Excelhj�lp PNG32 drivs av Excelspecialisten    Logga in     English
PNG32
PNG32 PNG32
PNG32

Logga in

PNG32

Du är inte inloggad. Logga in eller registrera dig för att skriva inlägg eller svara på inlägg.

För frågor om forumet, kontakta oss på webmaster@excelforum.se

PNG32 PNG32
PNG32 PNG32
PNG32

Excelforum

PNG32

 
ForumForumDiskussionerDiskussionerExcelExcelScenario med tre olika resultat, hur göra?Scenario med tre olika resultat, hur göra?
Föregående Föregående
 
Nästa Nästa
Nytt inlägg
 2013-05-11 23:31
 
 Ändrad av petu  på 2013-05-11 22:46:00
Ny på forumet, hoppas på lite hjälp av någon/några av alla duktiga här :)

Jag håller att försöka skapa ett excelblad som automatiskt räknar ut rating i schack. Jag har lyckats få till allt, utom det faktum att det i schack finns tre resultat. Vinst = 1 poäng, Remi = 0,5 poäng och förlust 0 poäng. Vinner man så får man mer ratingpoäng, beroende på hur duktig motståndaren var. Här följer en tabell för att visa hur:

Rating-
diff Vinst Remi Förlust
-500 31 15 -1
-410 30 14 -2
-353 29 13 -3
-309 28 12 -4
-271 27 11 -5
-237 26 10 -6
-208 25 9 -7
-179 24 8 -8
-152 23 7 -9
-127 22 6 -10
-103 21 5 -11
-80 20 4 -12
-57 19 3 -13
-34 18 2 -14
-11 17 1 15
0 16 0 -16
11 15 -1 -17
34 14 -2 -18
57 13 -3 -19
80 12 -4 -20
103 11 -5 -21
127 10 -6 -22
152 9 -7 -23
179 8 -8 -24
208 7 -9 -25
237 6 -10 -26
271 5 -11 -27
309 4 -12 -28
353 3 -13 -29
410 2 -14 -30
500 1 -15 -31

Låt oss säga att spelare A som har 1900 i rating vinner mot spelare B som har 2250 i rating. Då blir ratingskillnaden för spelare A -350 poäng och han får enligt tabellen 28 nya poäng. Jag har använt formeln =LETARAD(K3;S3:T33;2;SANT)-1 där K3 är cellen som räknar ut ratingskillnaden och S3:T3 är Ratingskillnad och Vinst enligt ovanstående tabell. Allt funkar väl förutom...

... det faktum att det kan bli 3 olika resultat som sagt. Hur gör man en formel där man om man i en given cell fyller i "1" eller "0,5" eller "0" så beräknar den olika. Hade det blivit remi i partiet så skulle ju spelare A få 12 nya poäng och vid förlust skulle han förlora 4 poäng.

Tack på förhand, hoppas någon duktig lyckas lösa det här problemet :)

Peter
Nytt inlägg
 2013-05-13 12:35
 
Nytt inlägg
 2013-05-13 20:49
 
Äntligen !!! Jag testade olika resultat och rating-skillnader och det stämde varenda gång. Tusen tack Rambo, made my day :)))
Nytt inlägg
 2013-05-14 14:28
 

Mycket snygg lösning.

Jag undrar dock om du har möjlighet att förklara strängen för oss som inte hänger med?

=OM(B3="";"";OM(B3-G3<0;VTSÖK(B3-G3;Schack!$S$1:$V$32;4-2*C3;SANN)-1;VTSÖK(B3-G3;Schack!$S$1:$V$32;4-2*C3;SANN)))

Varför ställer du det "logiska testet" till B3=""? Vad betyder det?

Varför sätter du "värde om sant" till ""? Vad betyder det?

Och vad är logiken bakom OM(G3-B3<0;VTSÖK(G3-B3;Schack!$S$1:$V$32;4-2*H3;SANN)-1;VTSÖK(G3-B3;Schack!$S$1:$V$32;4-2*H3;SANN)))

Vore tacksam för en förklaring så att jag kan lära mig, och slippa leta efter formler här för liknande frågor ;)

Nytt inlägg
 2013-05-14 16:20
 
 Ändrad av Rambo  på 2013-05-14 15:23:07

Det logiska testet OM(B3="";"" innebär att om B3 är tom så ska inte något poängvärde genereras i cell D3. Jag utgår från att ingen deltagare har 0 i rankpoäng. Detta är för att slippa få ut poängvärden på ej använda rader.

Det logiska testet SANT kan också utelämnas helt. Det fungerar på samma sätt att den får träff på det värde som ligger exakt eller närmast före den aktuella rankskillnaden. Om man använder det logiska testet FALSKT så måste det exakta sökvärdet finnas i matrisen annars generaras värdet #SAKNAS!
Det fungerar således inte att använda FALSKT som logisk test då matrisen har stora hopp i värdena i kolumnen Rank diff.

Logiken bakom formeln som du frågar efter är att eftersom LETAUPP-funktionen letar uppifrån och ner så får den för de negativa rankskillnaderna träff en rad för tidigt. Därför måste -1 läggas till värdet som den hittar i matrisen om rankskillnaden som den letar efter är negativ. Detta fungerar givetvis endast under förutsättningen att poängvärdena ändras med 1 för varje intervall.

Nytt inlägg
 2013-05-14 22:40
 
Grymt tips OM(B3="";"";

Är det möjligt att utnyttja den formeln så att 2 celler måste vara kopplade på det viset för att ge ett värde i en cell? Till till exempelvis om man möter en nybörjare som inte fått rating än?
Nytt inlägg
 2013-05-15 11:42
 

Formeln fungerar om man skriver 0 för nybörjarens rankpoäng. Se skillnaden mellan rankpoäng 0 eller inget värde alls i denna version:

http://www.fildump.se/?file=pub_g6j99...

Nytt inlägg
 2013-05-15 18:02
 
Tack igen, du har rätt. Ska använda 0 i så fall.
Nytt inlägg
 2013-05-15 20:28
 
Lyckades hitta ett smärre fel i samband med det logiska testet. Vid exakt träff hamnade den en poäng för lite. Justerade tabellen genom att ändra -500 till -499, -410 till -409 etc. , förde sedan in mina 30 senaste partier och det stämde exakt.
Nytt inlägg
 2013-12-15 23:51
 
Hej! Vore tacksamt om någon kunde ladda upp filen igen.

Tack på förhand!
Föregående Föregående
 
Nästa Nästa
ForumForumDiskussionerDiskussionerExcelExcelScenario med tre olika resultat, hur göra?Scenario med tre olika resultat, hur göra?

PNG32 PNG32
Excelforum drivs av Excelspecialisten som bedriver utbildning i Excel och VBA, tillhandahåller support och hjälp med Excel, utvecklar program i Excel. Är ni i behov av en konsult inom Excel, VBA eller VSTO, eller söker en excelkurs, kontakta oss.
Copyright 2013 ExcelSpecialisten XLS AB   Användarvillkor  Personliga uppgifter