Ongelma tämä:
Kaavaan pitäisi kopioida esim. solun B4 X riviä arvo. X luku saadaan toisesta solusta ja tämän solun arvo muuttuu eripaikassa.
Siis miten saan =B(4 X) laskettua?
Käytössä OOo mutta taitaa olla aikasamat kaavat molemmissa.
Kaavaan pitäisi kopioida esim. solun B4 X riviä arvo. X luku saadaan toisesta solusta ja tämän solun arvo muuttuu eripaikassa.
Siis miten saan =B(4 X) laskettua?
Käytössä OOo mutta taitaa olla aikasamat kaavat molemmissa.
Vastaukset 5
Vanhimmat
Jos ymmärsin kysymyksesi oikein, niin haluat solun osoitteen muuttuvan arvo X (olkoon se vaikkapa solussa A1) mukaan esim. seuraavasti:
A1=0 => osoite: B4
A1=1 => osoite: B5
A1=2 => osoite: B6
jne.
Jos noin niin solun osoitteen saat laskettua kaavalla:
="B" & 4 A1
Osoitten saat muutettua kaavassa käytettäväksi viittaukseksi EPÄSUORA-funktiolla (eng. INDIRECT):
Esim: =EPÄSUORA("B" & 4 A1)*2
- Mika
Tota epäsuoraa tarkotin mikä on indirect suomenkielisessäkin OOo:ssa.
tossa esimerkki taulukostani: =INDIRECT("F" & ROW(F111) F$108)
Miten sitte sais ton "B tai F":n tulemaan solusta eikä suoraan kirjaimesta? =COLUMN(F112) antaa vain sarakenumeron! Voiko tehdä käänteisen toiminnon eli 6->F?
=CHAR(COLUMN(F112) 64)
Tuollai sen taitaa saada mutta kai tohon joku toiminto on olemassa?!
Hmm... alkaa olla jo kikkailun makua
=ADDRESS(2;COLUMN(F112);4)
Jos ymmärsin oikein saattais SIIRTYMÄ-funktiosta olla tuossa apua, alla oleva kaava palauttaa arvon siitä sarakkeesta mikä määrätään solussa A2 ja siltä riviltä mikä määrätään solussa A1.
=SIIRTYMÄ(A1;A1-1;SARAKE(EPÄSUORA(A2&1))-1)
Tommonen tuli ja lopputulos on mitä pitääkin. Ylimääräistä tuli varmasti tehtyä mutta pääasia että toimii...
=INDIRECT(IF(ISEVEN(ROW(G110))=1;ADDRESS((ROW(F$110) ((ROW(F110)-ROW($F$110))/2));COLUMN(F110);4);ADDRESS((ROW(F$110) ((ROW(F110)-ROW($F$110))/2) $F$108-0,5);COLUMN(F110);4)))
Kiitti kaikille avusta. Rrrrriku