Haasteeni on seuraava. Käytössäni on suomenkielinen Excel 2007 ja pitäisi kerätä toisesta taulusta toiseen luettelo ilman tyhjiä välejä, eli kerätä listaan vain ne rivit, jotka olen merkinnyt. Seuraava taulu selittänee asiaa. Eli merkkaan sarkkeeseen A rastin kun haluan B-sarakkeen sisällön olevan käytössä. Kaikki rastitetut kohdat pitäisi kerätä tässä tapauksessa sarakkeeseen C. Käytännössä haluan ne toiseen tauluun:
rivi A________B_________C
1 x ekarivinteksti ekarivinteksti
2 tokarivinteksti kolkkarivinteksti
3 x kolkkarivinteksti nelkkurivinteksti
4 x nelkkurivinteksti kutosrivinteksti
5 vitosrivinteksti
6 x kutosrivinteksti
Eli kysymys on: onnistuuko Excelillä ja millä funktiolla vai miten se tehdään?
"Tiivistetty" luettelo
18
1146
Vastaukset
ihan Excelin omilla jutuillakin, jos mukana saa olla ne X:t. Jos et halua X:iä mukaan niin sitten pakko hoitaa koodilla. Mun postauksia löytyy aiheesta monia (kopioi/siirrä), kun hiukan hakua käyttää.
No excelin omalla Advanced Filterillä onnistuu suoraan.
Siitä toisesta taulukosta määrittelet hakuehtoalueen ja paikan mihin kopioidaan. Originellistä määrittelet suodatusalueen. Täppä Copy to Another location Action kohdassa ja OK
Ei se ton kummosempi ole...- jo nyrkki suussa
En tajua. Onnistuin kyllä suodattamaan paikalla niin, että ne rivit, joilla ei ole rastia, menivät piiloon - se ei ollut tarkoitus. Toiseen taulukkoon en saanut lajittelua menemään millään, vaikka maalasin alueita miten. Saanko lisää rautalankaa?
jo nyrkki suussa kirjoitti:
En tajua. Onnistuin kyllä suodattamaan paikalla niin, että ne rivit, joilla ei ole rastia, menivät piiloon - se ei ollut tarkoitus. Toiseen taulukkoon en saanut lajittelua menemään millään, vaikka maalasin alueita miten. Saanko lisää rautalankaa?
siis tiedot Sheet1:llä sarakkeissa A ja B. A sarakkeeseen merkitset X riville,jonka B sarakkeessa olevan tiedon haluat siirtää Sheet2:lle
1. Lisää Sheet1 1 riville uusi rivi ja laita siihen otsikoiksi A1=Haku ja B1=Tieto
2.Aktivoi Sheet2
3. Kirjoita esim. soluihin E1= Haku, E2=X ja F1=Tieto
4. Data/Filter/Advanced Filter lomakkeelle sitten seuraavat tiedot esim.
Action kohdassa täppä Copy to another location
List Range=Sheet1!$A$1:$B$100
Criteria Range=$E$1:$F$2
Copy to =$A$1
siinä se.
Muista, että suodatusta ei voi kopioida kuin aktiiviseeen taulukkoon, joten hakuehdot yms. on määriteltävä aktiivisessa taulukossa siis Sheet2, mutta itse hakutaulukko voi olla sitten missä tahansa taulukossa...
ei ole tosta pahemmin mainintaa löytynyt ja vahingossahan se mullekin selvisi aikanaan kun koodissani oli bugi oikeassa paikassa :-)
- ...
=JOS(RIVI()-RIVI(mihin) 1>RIVIT(mista)-LASKE.TYHJÄT(mista);"";EPÄSUORA(OSOITE(PIENI((JOS(mista"";RIVI(mista);RIVI() RIVIT(mista)));RIVI()-RIVI(mihin) 1);SARAKE(mista) 1;4)))
mista on määritelty A1:A6 ja mihin C1:C6- VÄHÄN pääsin
eteenpäin, mutta jotain teen vielä väärin. Nyt saan tämän toimimaan niin, että kullakin rvillä on tuo neuvomasi kaava ja jos laitan täpän, niin seuraava sarake tulee haluttuun paikkaan, mutta
1. tulee nolla jos täppää ei ole - pitäisi keksiä miten kyseinen rivi korvataan niin, että luetaan seuraavalta riviltä jolla on täppä
2. kun siirrän tämän toiseen tauluun, kaava kyllä näyttää oikealta, mutta kaikille riveille tulee nolla.
kaavani on nyt muotoa: =JOS(RIVI($K20:$K25)-RIVI(K20:K25) 1>RIVIT(H20:H25)-LASKE.TYHJÄT(H20:H25);"";EPÄSUORA(OSOITE(PIENI((JOS(H20:H25"";RIVI(H20:H25);RIVI() RIVIT(H20:H25)));RIVI($K20:$K25)-RIVI(K20:K25) 1);SARAKE(H20:H25) 1;4)))
ja sen tulos on seuraava kun toimin sarakkeissa H-K
H I J K
x eka eka
toka 0
x kolkka kolkka
x nelkku nelkku
viikka 0
x kuukka kuukka
Että mikä tässä vielä mättää paitsi meikäläisen äly?
Eli onko vielä joku kaava jolla voi kerätä siis peräkkäisille riveille vain ne K-sarakkeen (tai suoraan I-sarakkeen!) arvot, joiden kohdalla on H-sarakkeessa merkki? Eli jos nolla, lue seuraava... - ...
VÄHÄN pääsin kirjoitti:
eteenpäin, mutta jotain teen vielä väärin. Nyt saan tämän toimimaan niin, että kullakin rvillä on tuo neuvomasi kaava ja jos laitan täpän, niin seuraava sarake tulee haluttuun paikkaan, mutta
1. tulee nolla jos täppää ei ole - pitäisi keksiä miten kyseinen rivi korvataan niin, että luetaan seuraavalta riviltä jolla on täppä
2. kun siirrän tämän toiseen tauluun, kaava kyllä näyttää oikealta, mutta kaikille riveille tulee nolla.
kaavani on nyt muotoa: =JOS(RIVI($K20:$K25)-RIVI(K20:K25) 1>RIVIT(H20:H25)-LASKE.TYHJÄT(H20:H25);"";EPÄSUORA(OSOITE(PIENI((JOS(H20:H25"";RIVI(H20:H25);RIVI() RIVIT(H20:H25)));RIVI($K20:$K25)-RIVI(K20:K25) 1);SARAKE(H20:H25) 1;4)))
ja sen tulos on seuraava kun toimin sarakkeissa H-K
H I J K
x eka eka
toka 0
x kolkka kolkka
x nelkku nelkku
viikka 0
x kuukka kuukka
Että mikä tässä vielä mättää paitsi meikäläisen äly?
Eli onko vielä joku kaava jolla voi kerätä siis peräkkäisille riveille vain ne K-sarakkeen (tai suoraan I-sarakkeen!) arvot, joiden kohdalla on H-sarakkeessa merkki? Eli jos nolla, lue seuraava...syötitkö taulukkokaavana (ctrl shift enter)
- ...
VÄHÄN pääsin kirjoitti:
eteenpäin, mutta jotain teen vielä väärin. Nyt saan tämän toimimaan niin, että kullakin rvillä on tuo neuvomasi kaava ja jos laitan täpän, niin seuraava sarake tulee haluttuun paikkaan, mutta
1. tulee nolla jos täppää ei ole - pitäisi keksiä miten kyseinen rivi korvataan niin, että luetaan seuraavalta riviltä jolla on täppä
2. kun siirrän tämän toiseen tauluun, kaava kyllä näyttää oikealta, mutta kaikille riveille tulee nolla.
kaavani on nyt muotoa: =JOS(RIVI($K20:$K25)-RIVI(K20:K25) 1>RIVIT(H20:H25)-LASKE.TYHJÄT(H20:H25);"";EPÄSUORA(OSOITE(PIENI((JOS(H20:H25"";RIVI(H20:H25);RIVI() RIVIT(H20:H25)));RIVI($K20:$K25)-RIVI(K20:K25) 1);SARAKE(H20:H25) 1;4)))
ja sen tulos on seuraava kun toimin sarakkeissa H-K
H I J K
x eka eka
toka 0
x kolkka kolkka
x nelkku nelkku
viikka 0
x kuukka kuukka
Että mikä tässä vielä mättää paitsi meikäläisen äly?
Eli onko vielä joku kaava jolla voi kerätä siis peräkkäisille riveille vain ne K-sarakkeen (tai suoraan I-sarakkeen!) arvot, joiden kohdalla on H-sarakkeessa merkki? Eli jos nolla, lue seuraava...Kaikki viittaukset täytyy olla absoluuttisia.
- tai absoluuttinen
VÄHÄN pääsin kirjoitti:
eteenpäin, mutta jotain teen vielä väärin. Nyt saan tämän toimimaan niin, että kullakin rvillä on tuo neuvomasi kaava ja jos laitan täpän, niin seuraava sarake tulee haluttuun paikkaan, mutta
1. tulee nolla jos täppää ei ole - pitäisi keksiä miten kyseinen rivi korvataan niin, että luetaan seuraavalta riviltä jolla on täppä
2. kun siirrän tämän toiseen tauluun, kaava kyllä näyttää oikealta, mutta kaikille riveille tulee nolla.
kaavani on nyt muotoa: =JOS(RIVI($K20:$K25)-RIVI(K20:K25) 1>RIVIT(H20:H25)-LASKE.TYHJÄT(H20:H25);"";EPÄSUORA(OSOITE(PIENI((JOS(H20:H25"";RIVI(H20:H25);RIVI() RIVIT(H20:H25)));RIVI($K20:$K25)-RIVI(K20:K25) 1);SARAKE(H20:H25) 1;4)))
ja sen tulos on seuraava kun toimin sarakkeissa H-K
H I J K
x eka eka
toka 0
x kolkka kolkka
x nelkku nelkku
viikka 0
x kuukka kuukka
Että mikä tässä vielä mättää paitsi meikäläisen äly?
Eli onko vielä joku kaava jolla voi kerätä siis peräkkäisille riveille vain ne K-sarakkeen (tai suoraan I-sarakkeen!) arvot, joiden kohdalla on H-sarakkeessa merkki? Eli jos nolla, lue seuraava......niin en onnistu. Toinen vastaaja kysyi teinkö ctrl-shift-enter - sehän on sama kuin transponointikaavassa, kokeilin mutta silloin tulee joka riville ensimmäinen arvo, jonka kohdalle olen laittanut täpän.
jos taas teen absoluuttisen viittauksen (= $ merkki vai?), niin ei onnistu silloinkaan. Luettelo ei "tiivisty"
Mahtaako tuo alkuperäisessä viestissäni oleva kysymys onnistuakaan muuten kuin tekemällä joku makro? - ...
tai absoluuttinen kirjoitti:
...niin en onnistu. Toinen vastaaja kysyi teinkö ctrl-shift-enter - sehän on sama kuin transponointikaavassa, kokeilin mutta silloin tulee joka riville ensimmäinen arvo, jonka kohdalle olen laittanut täpän.
jos taas teen absoluuttisen viittauksen (= $ merkki vai?), niin ei onnistu silloinkaan. Luettelo ei "tiivisty"
Mahtaako tuo alkuperäisessä viestissäni oleva kysymys onnistuakaan muuten kuin tekemällä joku makro?kaavassa osa rivi-funktioista on ilman viittauksia.
- joo!
... kirjoitti:
kaavassa osa rivi-funktioista on ilman viittauksia.
tämän jossain vaiheessa huomasin itsekin ja olen parina iltana väsyneenä yrittänyt tajuta mitä niihin tulisi. Tuolla aiemmin joku neuvoi sen mitä määritellään kohtii mista ja mihin, mutta tuo jäi selvittämättä enkä muistanut kysyä.
Eli nyt rupesin tänään taas kokeilemaan ja ongelma on se mitä tuohon rivi() kohtaan pitäisi määritellä.
Olen kokeillut siihen erilaisia rivi- jaja/tai aluemäärityksiä ja näyttäisi tosiaan tulevan "tiivistetty" luettelo, mutta ongelma on siis se, etten kokeilemallakaan hoksaa mikä alue pitäisi tuohon kohtaan laittaa! Tulee nimttäin "tiivistetyssä muodossa #LUKU? tms
Kiitos jos vielä olette kärsivällisiä ja jaksatte neuvoa lisää! - ...
joo! kirjoitti:
tämän jossain vaiheessa huomasin itsekin ja olen parina iltana väsyneenä yrittänyt tajuta mitä niihin tulisi. Tuolla aiemmin joku neuvoi sen mitä määritellään kohtii mista ja mihin, mutta tuo jäi selvittämättä enkä muistanut kysyä.
Eli nyt rupesin tänään taas kokeilemaan ja ongelma on se mitä tuohon rivi() kohtaan pitäisi määritellä.
Olen kokeillut siihen erilaisia rivi- jaja/tai aluemäärityksiä ja näyttäisi tosiaan tulevan "tiivistetty" luettelo, mutta ongelma on siis se, etten kokeilemallakaan hoksaa mikä alue pitäisi tuohon kohtaan laittaa! Tulee nimttäin "tiivistetyssä muodossa #LUKU? tms
Kiitos jos vielä olette kärsivällisiä ja jaksatte neuvoa lisää!pitäisi olla kolme rivi-funktiota, joissa ei ole viittauksia eli pelkkä RIVI().
- kun on jo kolme
... kirjoitti:
pitäisi olla kolme rivi-funktiota, joissa ei ole viittauksia eli pelkkä RIVI().
kertaa tuo rivi() määritys, eikä toimi, eli joku tässä vielä mättää:
=JOS(RIVI()-RIVI($D$1:$D$6) 1>RIVIT($A$1:$A$6)-LASKE.TYHJÄT($A$1:$A$6);"";EPÄSUORA(OSOITE(PIENI((JOS($A$1:$A$6"";RIVI($A$1:$A$6);RIVI() RIVIT($A$1:$A$6)));RIVI()-RIVI($D$1:$D$6) 1);SARAKE($A$1:$A$6) 1;4)))
Tämä kaava tekee sen, että mihin tahansa kohtaan listaa pistän täpän, se ottaa ensimmäiselle riville koko määritellyn alueen *alapuolella* olevan rivin (luulin ensin sen tekevän tyhjää, mutta sitten keksin kirjoittaa tuolle riville "tätä ei enää pitäisi tulla mukaan").
Kun pistän toisen täpän, se kirjoittaa toiselle riville #LUKU! Nämä kyllä menevät "tiivistetysti" niinkuin on tarkoitus, mutta ei siis poimi b-sarakkeessa olevia arvoja d:hen.
Pitäiskö jostain kohtaa osata ottaa pois tuo 1, ettei se poimisi sitä alapuolella olevaa 7. riviä? Mutta tuskin siinäkään vielä kaikki?! - ...
kun on jo kolme kirjoitti:
kertaa tuo rivi() määritys, eikä toimi, eli joku tässä vielä mättää:
=JOS(RIVI()-RIVI($D$1:$D$6) 1>RIVIT($A$1:$A$6)-LASKE.TYHJÄT($A$1:$A$6);"";EPÄSUORA(OSOITE(PIENI((JOS($A$1:$A$6"";RIVI($A$1:$A$6);RIVI() RIVIT($A$1:$A$6)));RIVI()-RIVI($D$1:$D$6) 1);SARAKE($A$1:$A$6) 1;4)))
Tämä kaava tekee sen, että mihin tahansa kohtaan listaa pistän täpän, se ottaa ensimmäiselle riville koko määritellyn alueen *alapuolella* olevan rivin (luulin ensin sen tekevän tyhjää, mutta sitten keksin kirjoittaa tuolle riville "tätä ei enää pitäisi tulla mukaan").
Kun pistän toisen täpän, se kirjoittaa toiselle riville #LUKU! Nämä kyllä menevät "tiivistetysti" niinkuin on tarkoitus, mutta ei siis poimi b-sarakkeessa olevia arvoja d:hen.
Pitäiskö jostain kohtaa osata ottaa pois tuo 1, ettei se poimisi sitä alapuolella olevaa 7. riviä? Mutta tuskin siinäkään vielä kaikki?!Sain toistettua tuon virheen eli tavallisena kaavana vastaus tosiaan tulee alueen alapuolelta, mutta taulukkokaavana toimii.
- minulle kävi
... kirjoitti:
Sain toistettua tuon virheen eli tavallisena kaavana vastaus tosiaan tulee alueen alapuolelta, mutta taulukkokaavana toimii.
näin:
eka toka
x toka #PUUTTUU!
kolkka #PUUTTUU!
x nelkku #PUUTTUU!
viikka #PUUTTUU!
kuukka toka
mikset teet niinkuin neuvoin...
voinhan koodia laittaaa niin ei tartte tuskailla...- nyt vaan
osaa! Vaikka mitä teen niin pieleen näyttää menevän :(
Kaava näyttää nyt tuommoiselta:
=JOS(RIVI()-RIVI($D$1:$D$6) 1>RIVIT($A$1:$A$6)-LASKE.TYHJÄT($A$1:$A$6);"";EPÄSUORA(OSOITE(PIENI((JOS($A$1:$A$6"";RIVI($A$1:$A$6);RIVI() RIVIT($A$1:$A$6)));RIVI()-RIVI($D$1:$D$6) 1);SARAKE($A$1:$A$6) 1;4)))
Osaan kyllä pistää sen soluun (no siellähän se jo on solussa D1 eli jostain syystä olen jättänyt c-sarakkeen tyhjäksi, kai saa olla?) ja sitten maalata sen alueen eli D1:D6, painaa F2 ja sitten yhtä aikaa ctrl-shift-enter ja kaava tulee alueelle d1:d6 ja siihen ilmestyy aaltosulut, ja tulos on tämä:
eka toka
x toka #PUUTTUU!
kolkka #PUUTTUU!
x nelkku #PUUTTUU!
viikka #PUUTTUU!
kuukka toka
Ja jos en laita sitä taulukkokaavana tulos on tämä:
eka Tämä rivi tulee alueen ulkopuolelta!
x toka #LUKU!
x kolkka #LUKU!
nelkku
viikka
x kuukka
Että MIKÄ on vikana huh, huh sanon ma, ei enää naurata :( - ...
nyt vaan kirjoitti:
osaa! Vaikka mitä teen niin pieleen näyttää menevän :(
Kaava näyttää nyt tuommoiselta:
=JOS(RIVI()-RIVI($D$1:$D$6) 1>RIVIT($A$1:$A$6)-LASKE.TYHJÄT($A$1:$A$6);"";EPÄSUORA(OSOITE(PIENI((JOS($A$1:$A$6"";RIVI($A$1:$A$6);RIVI() RIVIT($A$1:$A$6)));RIVI()-RIVI($D$1:$D$6) 1);SARAKE($A$1:$A$6) 1;4)))
Osaan kyllä pistää sen soluun (no siellähän se jo on solussa D1 eli jostain syystä olen jättänyt c-sarakkeen tyhjäksi, kai saa olla?) ja sitten maalata sen alueen eli D1:D6, painaa F2 ja sitten yhtä aikaa ctrl-shift-enter ja kaava tulee alueelle d1:d6 ja siihen ilmestyy aaltosulut, ja tulos on tämä:
eka toka
x toka #PUUTTUU!
kolkka #PUUTTUU!
x nelkku #PUUTTUU!
viikka #PUUTTUU!
kuukka toka
Ja jos en laita sitä taulukkokaavana tulos on tämä:
eka Tämä rivi tulee alueen ulkopuolelta!
x toka #LUKU!
x kolkka #LUKU!
nelkku
viikka
x kuukka
Että MIKÄ on vikana huh, huh sanon ma, ei enää naurata :(tein kuten sinäkin ja tulos oli sama #PUUTTUU! ym.
Ensin D1:een taulukkokaava ja sitten venytä aluetta oikeasta alakulmasta D6:een (hiiren kohdistin muuttuu :ksi). - Kiitokset!!!
... kirjoitti:
tein kuten sinäkin ja tulos oli sama #PUUTTUU! ym.
Ensin D1:een taulukkokaava ja sitten venytä aluetta oikeasta alakulmasta D6:een (hiiren kohdistin muuttuu :ksi).JOPAS toimii :=)
Oikein paljon kiitoksia avusta ja kiitos myös kärsivällisyydestä!
Kaunista kevättä!
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Mikä on kaivattusi etunimi?
Otsikossa siis on kysymys eriteltynä. Vain oikeat vastaukset hyväksytään.1392679En kestä katsoa
Sitä miten sinusta on muut kiinnostuneita. Olen kateellinen. Siksi pitäisi lähteä pois1091524- 1371377
Peräti 95 % persujen kannattajista rasisteja
Kertoo EVA:n teettämä kysely. Pakollista yhdenvertaisuuskoulutusta tarvitsee siis paljon laajempi joukko kuin pelkästää3561305Kun viimeksi kohtasitte/näitte
Mitä olitte tekemässä? Millainen ympäristö oli? Löydetään toisemme...1081218Olet kyllä vaarallisen himokas
Luova, kaunis, määrätietoinen, pervo, mielenkiintoinen, kovanaama, naisellinen ja erikoinen.991105Anna vielä vähän vihreää valoa
Teen sitten siirtoni, nainen. Tiedän, että olet jo varovaisesti yrittänyt lähestyä, mutta siitä on jo aikaa. Jos tunnet14815On minulla suunitelma
Siitä ei vain tiedä kukaan muu kuin tällä hetkellä minä. Suunnitelma ja varasuunnitelma. Sinun takiasi nainen. Vain s47800Palstan ylivoimaisesti suosituin keskustelunaihe
Palstan suosituin keskustelunaihe näyttää olevan homoseksuaalisuus. Otsikoiden perusteella voisi kuvitella olevansa Seks252759- 55744