Sivu 1/1

Excel-guruille pähkinä purtavaksi

Lähetetty:
Kirjoittaja Chivas Regal
Apuva!

Mulla on Excel-tiedosto johon on kerätty raakadatana Englannin Valioliigan ottelut vuosilta 1993 - tähän päivään asti; about 5300 riviä.
B-sarakkeella on kotijoukkueen nimi ja D-sarakkeella vierasjoukkueen nimi. Kotijoukkueen maalit on F-sarakkeella ja vierasjoukkueen maalit H-sarakkeella.
Ja sitten varsinainen ongelma:
I-sarakkeelle tulee kotijoukkueen voimaluku ennen ottelua ja J-sarakkeelle vierasjoukkueen vastaava. Ottelun jälkeen päivittyy uudet voimaluvut sarakkeille L ja M.
Nyt sitten pitäisi saada tuo uusi voimaluku siirrettyä joukkueen seuraavan ottelun lähtötiedoksi, eli joko sarakkeelle I tai J,riippuen siitä onko k.o. joukkue kotona vai vieraissa. Voiko tätä mitenkään automatisoida, kun ei jaksaisi käydä kaikkia 5300 riviä manuaalisesti läpi? :cry:

Lähetetty:
Kirjoittaja Fumbler
Tässä todellinen purukumiviritys, toimivampaa varmasti on tarjolla.

Selvyyden vuoksi palastelen vähän funktiota.

Seuraava rimpsu etsii rivillä 7 olevan ottelun kotijoukkueen edellisen pelin rivin.
{=MAX(IF(B7=D2:D6;ROW(D2:D6);0);IF(B7=B2:B6;ROW(B2:B6);0))}

Solun kuittaus CTRL+SHIFT+ENTER niin saa nuo aaltosulut.

Seuraavalla taas tsekataan onko viimeksi pelattu kotona vai vieraissa
=IF(INDEX(B1:B6;RIVINUMERO;1)=B7;1;2)

RIVINUMERO on yhtä kuin ensimmäinen kaava, selvyyden vuoksi en nyt kirjoittanut sitä uusiksi.

Eli summarum, seuraava kaava soluun I7 niin saat automaattisesti edellisen pelin voimaluvun.

=INDEX(L1:M6;MAX(IF(B7=D2:D6;ROW(D2:D6);0);IF(B7=B2:B6;ROW(B2:B6);0));IF(INDEX(B1:B6;MAX(IF(B7=D2:D6;ROW(D$2:D6);0);IF(B7=B2:B6;ROW(B2:B6);0));1)=B7;1;2))

Ja kuittaus CTRL+SHIFT+ENTER. Dollarimerkkejä lisäilemällä saa kopioitua muihinkin soluihin.

Nyt kiire kahvitunnille. Toivottavasti joku tekee selkeämmän kaavan, mutta kyllä tuollakin alkuun pääsee.

Lähetetty:
Kirjoittaja Chivas Regal
Kiitos paljon Fumbler.

Kotijoukkueiden osalta näyttäisi toimivan hienosti, mutta vierasvoimaluvun päivityksessä edelleen ongelmia. Esim:

Rivillä 25 Manu kotona ja Newcastle vieraissa. Manun voimaluku pelin jälkeen 1540 ja Newcastlen voimaluku 1479.

Seuraava Manun peli vieraissa rivillä 35 ja tuo kaava laskee siihen jostain syystä tuon Newcastlen voimaluvun 1479.

Kun vaihtaa kaavan lopussa olevat 1 ja 2 päikseen, saa tuohon oikean luvun, mutta sitten jatkossa tulee murheita.

Mulle tollaset kaavat on ihan hepreaa, joten voisitteko auttaa miestä mäessä, kiitos...

EDIT:

Toimii sittenkin. Olin vaan itse tupeltanut kopioinnin kanssa. :oops:
Iso käsi Fumblerille! :D