Pönttöfoorumi
Keskustelualueet => Vapaa keskustelu => Aiheen aloitti: jaTa69 - 19.02.09 - klo:19:58
-
Mikä mahtaisi olla helpoin tapa löytää aikaisin päivä riviltä, ilman että vuotta huomioidaan.
esim: rivillä sarakkeissa A1-D1 päivämäärät
12.1.2005 | 18.1.2006 | 5.1.2007 | 20.1.2008
Noista pitäsi saada rivin seuraavaan sarakkeeseen (E1) siis 5.1.2007
MIN-funktio ei yksistään toimi, se kun ottaa vuoden huomioon.
Kaavan pitäisi mieluusti toimia Openofficessakin
-
jaTa69, oliko tuo suomenkieltä? [:-I]
-
jaTa69, oliko tuo suomenkieltä? [:-I]
On [:-)]
Enkä jaksa nyt kääntää sitä hindiksi [:-DD]
-
Eli siis tähän tapaan pitäisi saada toimimaan, sarakkeeseen J aikaisin päivämäärä muista sarakkeista
(http://jata.vampula.net/ponttola/tesim.jpg)
-
Toimiiko niin jos vuodelle saisi oman sarakkeen tai rivin, minähän en tiedä, kiva kun osaisi muutakin kun ihmetellä [NUT] [NUT] [NUT]
-
Mitäs minä siellä Jatan listassa teen [:-DD]
-
Tai auttaako jos päiväyksissä vuosi pakollinen niin vuodelle oma sarake ja rivi ja sitten päiväykset esim 01.12 ja 07.08 tulisikin muotoon 0112 ja 0708 [NUT] [NUT] [NUT]
-
Mä tunnustan tyhmyyteni näissä hommissa, mutta käsipelillä se varmaan onnistuisi, jos mitään automaattista systeemiä ei löydy?
-
Tai auttaako jos päiväyksissä vuosi pakollinen niin vuodelle oma sarake ja rivi ja sitten päiväykset esim 01.12 ja 07.08 tulisikin muotoon 0112 ja 0708 [NUT] [NUT] [NUT]
Pahuksen ohjelmat lisäävät vuoden väkisin päiväykseen tai sitten eivät ymmärrä lukua päiväykseksi.
Nyt on käytössä feikkisysteemi, sama vuosi /eli väärä vuosi) joka sarakkeessa.
Totta kai se käsipelillä onnistuu, mutta automaatti olis kiva
Rivejä kun oli yli 200 ja joka vuosi tulee uusi sarake, eli vuosi lisää
-
Muotoile solut (CTRL+1) ja laita päivämäärän muodoksi 12.1.
-
Muotoile solut (CTRL+1) ja laita päivämäärän muodoksi 12.1.
Ei se poista alkuperäistä ongelmaa aikaisimman havaintopäivän hausta.
-
=MIN(DATE(2000;MONTH(C2);DAY(C2));DATE(2000;MONTH(D2);DAY(D2));DATE(2000;MONTH(E2);DAY(E2));DATE(2000;MONTH(F2);DAY(F2));DATE(2000;MONTH(G2);DAY(G2));DATE(2000;MONTH(H2);DAY(H2)))
Tämä toimii auttavasti, vaikkakin hukkaakin vuoden, mutta menee paremman puutteessa.
Kaava ottaa soluista päivämäärän ja muuttaa siitä vuoden vuodeksi 2000 ja etsii sitten soluista pienimmän arvon.
Parempia ideoita otetaan edelleen vastaan [:-I]
-
Heitä kymysys Excel-palstalle. Siellä on aika kaavanvääntäjäguruja...
http://keskustelu.suomi24.fi/show.fcgi?category=108&conference=4500000000000708
-
A1 | B2 | C1 | D1 | E1 |
12.1.2005 | 18.1.2006 | 5.1.2007 | 20.1.2008 | =min(A1:D1) |
Solu E1 päivämäärämuodoksi esim. 12.1. (TT.MM.) , kaavan saat muillekin E1 riveille kun vedät solua hiirellä saraketta alaspäin.
-
A1 | B2 | C1 | D1 | E1 |
12.1.2005 | 18.1.2006 | 5.1.2007 | 20.1.2008 | =min(A1:D1) |
Solu E1 päivämäärämuodoksi esim. 12.1. (TT.MM.) , kaavan saat muillekin E1 riveille kun vedät solua hiirellä saraketta alaspäin.
Tämä ei toimi toivotulla tavalla, kuten jaTa alussa totesikin (ottaa pienimmän vuosiluvun mukaan).
-
Tiedä onko tää yhtään parempi, mut sillä saa ainakin toivotun lopputuloksen [:-P]
Näät apusarakkeet voi tietty laittaa omalle välilehdelle jos niistä muuten on haittaa.
A1 12.1.2005
B1 18.1.2006
C1 5.1.2007
D1 20.1.2008
E1 =PÄIVÄ(J1)&"."&KUUKAUSI(J1)
F1 =ARVO(PÄIVÄ(A1)&"."&KUUKAUSI(A1))
G1 =ARVO(PÄIVÄ(B1)&"."&KUUKAUSI(B1))
H1 =ARVO(PÄIVÄ(C1)&"."&KUUKAUSI(C1))
I1 =ARVO(PÄIVÄ(D1)&"."&KUUKAUSI(D1))
J1 =MIN(F1:I1)
-
Heitä kymysys Excel-palstalle. Siellä on aika kaavanvääntäjäguruja...
http://keskustelu.suomi24.fi/show.fcgi?category=108&conference=4500000000000708
Openoffice-ryhmään tuli vastaus [:-)]
=INDIRECT(ADDRESS(ROW();MAX(IF(MIN(A2:D2-DATE(YEAR(A2:D2);1;1))=(A2:D2-DATE(YEAR(A2:D2);1;1));COLUMN(A2:D2);0))))
Matriisikaavana
Nyt vaan pitää ymmärtää miten toi kaava sen tekee [NUT] [:-DD]