Minulla taulukko, jossa yhdessä sarakkeessa on sekä positiivisiä ja negatiivisiä lukuja. Haluaisin laskea nämä yhteen niin, että negatiiviset eivät vähentäisi kokonaissummaa. Eli jos luvut esim. on 3, 2, -2 ja -1 niin yhteenlaskettu summa olisi: 8 eikä 2
Mitenköhän tämä onnistuisi Excelissä taikka oikeastaan Open Officen calcissa? ...samojahan nuo taitaa suurinpiirtein kaavoiltaan olla...
Negatiiviset positiiviseksi
10
2243
Vastaukset
- ettätälleen
tämä "oikeaa" ekseliä , mutta ainakin näin. Jos nuo luvut A1:A4
=SUMMA.JOS(A1:A4;">0") ITSEISARVO(SUMMA.JOS(A1:A4;"=SUMMA(SUMMA.JOS(A1:A4;{"0"})*{-1;1})
matriisikaavoina CRTL SHIFT ENTER
{=SUMMA(ITSEISARVO(A1:A4))}
{=SUMMA(JOS(A1:A4- ...
kunde kirjoitti:
=SUMMA(SUMMA.JOS(A1:A4;{"0"})*{-1;1})
matriisikaavoina CRTL SHIFT ENTER
{=SUMMA(ITSEISARVO(A1:A4))}
{=SUMMA(JOS(A1:A4Openoffice ei ymmärrä ensimmäistä kaavaa eli tulos on väärä.
kunde kirjoitti:
=SUMMA(SUMMA.JOS(A1:A4;{"0"})*{-1;1})
matriisikaavoina CRTL SHIFT ENTER
{=SUMMA(ITSEISARVO(A1:A4))}
{=SUMMA(JOS(A1:A4Jos nyt ohitetaan se seikka, että aloittaja oli ehkä vähän väärällä palstalla kysymyksineen, niin mikä kammo noin yleisimmin liittyy apusarakkeen tai välivaiheen käyttöön.
Jos ajatellaan tässä keskustelussa esille tulleita kaavoja, niin ehkä pienellä kokeilulla olisi saanut yhden (ensimmäisenä toisaalla esitetyn) itse laadittua, mutta taas käyttämällä itseisarvoja apusarakkeessa kirjoitettavia kaavoja olisi tullut merkkimäärältään kutakuinkin saman verran ja sen olisin saanut tehtyä pähkäilemättä. Lisätyönä olisi ollut =ABS(A1) kaavan levittäminen kahvasta.
Eräänä etuna välivaiheen käytössä on se, että virheen paikallistaminen on helpompaa. Jos tiivis ja pitkä kaava tuottaakin virheen, niin sen löytäminen on mielestäni vaikeampaa kuin välivaihein etenevässä laskennassa.
Niin että onkos ne haitat todellakin riittävän isoja yleisesti? Ja jos niistä saisi vähän vinkkiäkinkin (-;tuttumies kirjoitti:
Jos nyt ohitetaan se seikka, että aloittaja oli ehkä vähän väärällä palstalla kysymyksineen, niin mikä kammo noin yleisimmin liittyy apusarakkeen tai välivaiheen käyttöön.
Jos ajatellaan tässä keskustelussa esille tulleita kaavoja, niin ehkä pienellä kokeilulla olisi saanut yhden (ensimmäisenä toisaalla esitetyn) itse laadittua, mutta taas käyttämällä itseisarvoja apusarakkeessa kirjoitettavia kaavoja olisi tullut merkkimäärältään kutakuinkin saman verran ja sen olisin saanut tehtyä pähkäilemättä. Lisätyönä olisi ollut =ABS(A1) kaavan levittäminen kahvasta.
Eräänä etuna välivaiheen käytössä on se, että virheen paikallistaminen on helpompaa. Jos tiivis ja pitkä kaava tuottaakin virheen, niin sen löytäminen on mielestäni vaikeampaa kuin välivaihein etenevässä laskennassa.
Niin että onkos ne haitat todellakin riittävän isoja yleisesti? Ja jos niistä saisi vähän vinkkiäkinkin (-;apusarakkeethan on ihan OK.
Mutta jos sulla on joku valmis tulostuspohja mihin tarttee tehdä uusia laskelmia, niin apusarake on sijoitettava tulostusalueen ulkopuolelle. Nähdäkseen apusarakkeen taulukkoa pitää sitten scrollata, ja useinhan se pitää myös piilottaa tulostuksissa, jos vaikka sitä apusaraketta voisikin käyttää tulostusalueella...
Ei merkkien määrä ole ratkaiseva (vertaa koodissa rivit) vaan tehokkuus, luettavuus ja muokkauksen helppous. Jos monta apusaraketta- monta paikkaa muokattavaa.
Toisaalta vaiheittaisen laskemisen tarkistus on helppoa...
esim. kaavassani {=SUMMA(JOS(A1:A4kunde kirjoitti:
apusarakkeethan on ihan OK.
Mutta jos sulla on joku valmis tulostuspohja mihin tarttee tehdä uusia laskelmia, niin apusarake on sijoitettava tulostusalueen ulkopuolelle. Nähdäkseen apusarakkeen taulukkoa pitää sitten scrollata, ja useinhan se pitää myös piilottaa tulostuksissa, jos vaikka sitä apusaraketta voisikin käyttää tulostusalueella...
Ei merkkien määrä ole ratkaiseva (vertaa koodissa rivit) vaan tehokkuus, luettavuus ja muokkauksen helppous. Jos monta apusaraketta- monta paikkaa muokattavaa.
Toisaalta vaiheittaisen laskemisen tarkistus on helppoa...
esim. kaavassani {=SUMMA(JOS(A1:A4Toivotaan, että mainiosta vastauksestasi on hyötyä mahdollisimman monelle palstan lukijalle. Lähtökohtanani oli lähinnä osaamattomuus tai huonomuistisuus, joka estää käyttämästä hienompia piirteitä, kun ei muista tai tiedä niiden olemassaolostakaan. Tätä saattaa esiintyä satunnaisemmilla käyttäjillä.
Esimerkkinä vaikka tuo F9-näppäimen käyttö syöttörivillä. Olen melko varmasti joskus lukenut siitä (OOo Calcissa), mutta enpäs enää muistanut sitä. Sehän tosiaan auttaa välivaiheen tuloksen selvittämisessä, tehden tältä osin apusarakkeen vähemmän tarpeelliseksi. Jos vaan muistaa sen olemassaolon.
- dztgnjtn
Siis haluat laskea lukujen itseisarvot yhteen? =SUM(ABS(A1:A4))
lisää välilaskennasta
valikosta
TYÖKALUT/KAAVAN TARKISTAMINEN/KAAVAN LASKEMINEN voi testailla aktiivisen solun kaavan laskentaa
ja jos haluaa automatisoida esim. hiirtä tuplaklikkaamalla lomake näkyviin niin
ko. taulukon moduuliin...
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Application.Dialogs(xlDialogEvaluateFormula).Show
Cancel = True
End Sub
ja jos haluaa tuplaklikkauksen toimivan normaalisti lomakkeen sulkemisen jälkeen niin hipsaa koodissa rivi Cancel = True
edelliselle...
kannattaisi testata kaavojen toiminta ennenkuin postaa niitä!
Kaavasi toimii hyvin matriisikaavana ja sen olen jo aiemmin postannut tänne, mutta tavallisena kaavana ei toimi...- erth34
kunde kirjoitti:
lisää välilaskennasta
valikosta
TYÖKALUT/KAAVAN TARKISTAMINEN/KAAVAN LASKEMINEN voi testailla aktiivisen solun kaavan laskentaa
ja jos haluaa automatisoida esim. hiirtä tuplaklikkaamalla lomake näkyviin niin
ko. taulukon moduuliin...
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
Application.Dialogs(xlDialogEvaluateFormula).Show
Cancel = True
End Sub
ja jos haluaa tuplaklikkauksen toimivan normaalisti lomakkeen sulkemisen jälkeen niin hipsaa koodissa rivi Cancel = True
edelliselle...
kannattaisi testata kaavojen toiminta ennenkuin postaa niitä!
Kaavasi toimii hyvin matriisikaavana ja sen olen jo aiemmin postannut tänne, mutta tavallisena kaavana ei toimi...Ei kun siis =ABS(A1), täyttö ja sitten =SUM(A1:A4)
- DonTuomas
=SUMMA.JOS(A1:A100;">0") (-1)*SUMMA.JOS(A1:A100;"<0")
Tämä tekee sen kahdessa osassa. Ensiksi kaikki posiitiviset luvut lasketaan yhteen, jonka jälkeen kaikki negattiviset luvut lasketaan yhteen ja vaihdetaan merkki positiiviseksi. Itseisarvoa käyttämällä lausekkeesta tulee liian pitkä jos lukuja on vähänkin enemmän, koska luvut täytyy muuntaa yksitellen positiiviseksi. Eihän tuo kaunis funktio ole, mutta ajaa asiansa.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Trump muka öljyn takia Venezuelaan? Pelkää mustamaalausta
Kertokaapa mistä tuollainen uutisankka on saanut alkunsta? Näyttäkääpä ne alkuperäiset lähteet, minä en löytänyt mitään13813212Kun Arman Alizad puolusti hiihtäjä Vilma Nissilää sanomalla
"älä välitä sekopäistä Vilma", ja kun siitä kerrottiin täällä, niin sekopäinen mukasuvaitsevainen teki siitä valituksen853675Venezuela on hyvä esimerkki vasemmistolaisten pahuudesta
Jokainen tietää, että Venezuelassa on pitkään ollut Chavezin ja Maduron vasemmistohallinto. Maan talous on romuttunut,1162966Martinalta vahva viesti
"Suuret unelmat venyttävät sinua, pelottavat vähän ja vievät mukavuusalueen ulkopuolelle. Juuri siellä kasvu tapahtuu. J2791410Miksei Trump ole kiinnostunut Suomen valloittamisesta?
Täällähän on enemmän turvetta kuin Norjalla öljyä. Eikö Ttump ole turvenuija?371393Akateemikko Martti Koskenniemi vertaa Trumpia Putiniin
"-Suomalaisena on syytä olla huolissaan siitä, että Yhdysvallat näin vahvistaa 1800-luvun alkupuolella julistamansa etup1511329Jos mies olet oikeasti...?
Kiinnostunut... Pyydä mut kunnolla treffeille ja laita itsesi likoon. En voi antaa sydäntä jos sinä olet epävarma ja eh1151284Esko Eerikäinen paljastaa järkyttävän muiston lapsuudesta - Isä löytyi alastomana slummista
Esko Eerikäisen tausta on monikulttuurinen, hän muutti vain 10-vuotiaana yksin kotoaan Kolumbiasta isovanhempiensa luo S141214- 811071
Nautitko riidan haastamisesta?
Itse olen hyvin kärsivällinen ja sopuisa noin yleensä, mutta osaan tarvittaessa olla hankala. Niin metsä vastaa kuin sin205989