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
2241
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
Vuonna 2026 jää entistä vähemmän rahaa käteen palkansaajille
Työttömyysvakuutusmaksu nousee 0,3 prosenttia. Työeläkemaksu nousee 7,15 prosentista 7,3 prosenttiin. Työmarkkinajärjest635983Yritystuet pois ja työeläkevaroilla maksettava valtion velka pois
Nyt on teille kerrottu keino kuinka Suomen velkaongelmasta päästää eroon kertalaakista. Älkää saatanat enää minulle tul1155304Suomen kansa puhunut: Purra huonoimpia ministereitä
Kouluarvosanalla 6–, eli samaa tasoa mitä Purran oikeakin koulutodistus. Epäpätevyys on tullut huomattua Suomen talouden3804145Ylen juttu sisäministeristä oli selvän tarkoitushakuinen
haluttiin vielä vuoden loppuun saada joku "kohu". (Olisiko Yle tehnyt jutun jos sisäministerinä olisi esim. RKP:n, jota1483334Suomalaista yrittäjää ei kommunistista erota
Muualla maailmassa yrittäjät elävät asiakkaiden rahoilla, Suomessa palkansaajien maksamilla veroilla. Palkansaajahan ma562816Joulun ruokajonoissa entistä enemmän avuntarvitsijoita - Mitä ajatuksia tämä herättää?
Räppärit Mikael Gabriel, VilleGalle ja Jare Brand jakoivat ruokaa ja pehmeitäkin paketteja vähävaraisille jouluaattoa ed1292156- 262151
Ulkoministeriön konsulipäällikkö arvostelee rajusti Haavistoa: "Täällä on pelon ilmapiiri"
"– Täällä on ministerin toimien takia aivan selvästi pelon ilmapiiri. Jos sellaisen annetaan pesiytyä virkamieskulttuuri191960Pyydän anteeksi etten osannut ratkaista
Mitään muuta kuin lähtemällä. Et oikein tullut vastaan etkä kuunnellut. Tuntui että minun piti koittaa sopia ja sovitell851959- 2491916