Kuinka lisätä moduuli Exceliin. Modulosummaus Excelissä. Funktiomerkin käyttäminen


Makrot (VBA-menettelyt) (63)
Muut (39)
Excel-virheet ja häiriöt (4)

Mikä on moduuli? Millaisia ​​moduuleja on olemassa?

Kaikki VBA-koodi on tallennettava jonnekin. VBA:n koodien tallentamiseen käytetään moduuleja, jotka tallennetaan työkirjaan. Kirja voi sisältää niin monta moduulia kuin haluat. Jokainen moduuli voi puolestaan ​​sisältää monia proseduureja (makroja).
Kaikki kirjassa olevat moduulit ovat nähtävissä VBA-editorin kautta ( Alt+F11). Käytettävissä olevat moduulit näkyvät editorin vasemmalla puolella Project Explorerissa.
Kuva 1
Itse objektien tutkija ei välttämättä näy oletusarvoisesti, ja sen jälkeen se on näytettävä: napsauta Ctrl+R tai VBA-editorin valikossa- Näytä-Project Explorer

Moduulit on jaettu viiteen päätyyppiin:

Yleisesti ottaen, tarkemmin sanottuna, moduuleja on vain kahden tyyppisiä - tavallisia ja luokkamoduuleja, koska Levymoduuli, Kirja moduuli, Mukautettu lomakemoduuli Ja Luokan moduuli ovat pohjimmiltaan luokkamoduuleja. Mutta jaoin ne nimenomaan useisiin tyyppeihin, koska... Näitä tyyppejä käytetään usein selityksiin eri oppikirjoissa ja eri foorumeilla, ja itse Excel-kirjoissa ne ovat erilaisia ​​ulkonäöltään ja toiminnallisuudeltaan.

Luodakseen uuden vakio moduuli, luokkamoduuli (ClassModule) tai käyttäjälomake (UserForm) Sinun tarvitsee vain napsauttaa hiiren kakkospainikkeella Project Explorer -ikkunaa ja valita Lisää ja sitten lisättävän objektin tyyppi ( Moduuli, ClassModule, UserForm). Voit myös lisätä moduulin valikon kautta: Lisää- moduulityyppi.
Poistaminen on myös helppoa: napsauta hiiren kakkospainikkeella haluamaasi moduulia projektiikkunassa ja valitse Poista. Lisätietoja poistamisesta tämän artikkelin lopussa:

STANDARDI MODUULI
kuvassa 1 Moduuli 1 .
Yleisin moduulityyppi, jota käytetään useimmissa tapauksissa. Niissä makrotallennin luo tallennettavia makroja. Kaikki tällaisten moduulien koodit ja menettelyt on kirjoitettu manuaalisesti tai kopioitu muista lähteistä (toisesta moduulista, tältä sivustolta jne.). Periaatteessa suurin osa koodista on vakiomoduuleissa. Ne on suunniteltu tallentamaan päämenettelyjä ja julkisia muuttujia, joita voidaan käyttää myöhemmin mistä tahansa moduulista. Vakiomoduulin luominen: Napsauta objektinhallintaikkunassa hiiren kakkospainikkeella - Lisää-Moduuli. Kun tallennetaan makrotallentimella, moduulit luodaan ja nimetään automaattisesti.
Monet sivuston artikkeleissa julkaistut koodit on sijoitettava vakiomoduuleihin. Luo uusi vakiomoduuli, kopioi kooditeksti sivustolta ja liitä se.

ARKKI MODUULI
Taulukko1 tai Taulukko1 - kuvassa 1: Arkki 1(Arkki 1), Arkki 2(Arkki 2), Arkki 3(Arkki3).
Jokaisella kirjan arkilla on oma erillinen moduulinsa. Arkkimoduuliin pääseminen on helpompaa kuin muihin moduuleihin pääsy. Voit tehdä tämän napsauttamalla hiiren kakkospainikkeella arkin pikakuvaketta ja valitsemalla kohteen pikavalikosta Lähdeteksti (katso koodi)
Excel-versiosta riippuen tällä venäjänkielisellä kohteella voi olla sama nimi: Katso koodi tai Lähde :

Voit valita vaikeamman reitin - VBA-editorin kautta: Alt+F11 ja Project Explorer -ikkunassa kaksoisnapsauta objektia, jolla on arkin nimi, tai napsauta hiiren kakkospainikkeella arkkimoduulia - Katso koodi.
Kun sijoitat koodia taulukkomoduuliin, muista, että kopioitaessa tai siirrettäessä tämä taulukko toiseen työkirjaan, myös koodi kopioidaan, koska on osa lehteä. Tämä on sekä plussa että miinus samaan aikaan. Etuna on, että asettamalla koodin arkkimoduuliin, voit käyttää tätä arkkia jakelupohjana omilla painikkeillasi näiden koodien kutsumiseksi (mukaan lukien kirjojen luominen koodilla) ja kaikki toiminnot ovat käytettävissä. Haittapuolena ovat jotkut solujen käytön vivahteet (lisätietoja löytyy tästä artikkelista: Alueen käyttäminen VBA:sta) ja tarve sijoittaa KAIKKI käytetyt menettelyt tähän taulukkoon, muuten koodit voivat toimia virheellisesti, kun ne siirretään muihin työkirjoihin. .

Taulukkomoduuli sisältää sisäänrakennettuja tapahtumaproseduureja, joista jokainen on vastuussa tietyn tapahtuman käsittelemisestä kyseisellä arkilla. Voit tarkastella niitä seuraavasti: valitse objekti (alla olevassa kuvassa lista on vasemmalla) laskentataulukko ja valitse tapahtuma oikeasta luettelosta (tämä luettelo sisältää kaikki valitulle arkille käytettävissä olevat toimenpiteet):


Menettelyt, joissa tapahtumia on jo käytössä, on korostettu lihavoituna.

Tapahtumamenettelyjen nimet ovat varsin informatiivisia, eivätkä useimmat niistä vaadi huolellista dekoodausta. Mutta mielestäni on välttämätöntä kuvata tärkeimmät käytetyt osat joka tapauksessa:

  • Aktivoida- tapahtuu, kun itse taulukko aktivoidaan (mutta ei tapahdu, jos työkirjasta toiseen siirtyy ja tämä taulukko on aktiivinen siellä)
  • Ennen DoubleClick- tapahtuu, kun kaksoisnapsautat mitä tahansa arkin solua. On tärkeää kiinnittää huomiota hyväksyttyihin argumentteihin: Target ja Cancel. Kohde - linkki soluun, jossa toiminto suoritettiin; Peruuta - on vastuussa muokkaustilan peruuttamisesta
  • EnnenRightClick- tapahtuu, kun napsautat hiiren kakkospainikkeella mitä tahansa arkin solua. On tärkeää kiinnittää huomiota hyväksyttyihin argumentteihin: Target ja Cancel. Kohde - linkki soluun, jossa toiminto suoritettiin; Peruuta - vastaa ponnahdusvalikon näytön peruutuksesta
  • Laskea- esiintyy, kun funktioita ja kaavoja lasketaan uudelleen arkilla
  • Muuttaa- Tapahtuu, kun arkin solujen arvot muuttuvat. On tärkeää kiinnittää huomiota ohitettuun Target-argumenttiin. Kohde - viittaus muutettuun soluun. Saattaa poiketa aktiivisesta solusta käsittelyhetkellä
  • Poista käytöstä- tapahtuu siirryttäessä tältä arkilta toiselle saman työkirjan arkille
  • Seuraa Hyperlinkkiä- tapahtuu, kun seurataan tähän taulukkoon luotua hyperlinkkiä
  • SelectionChange- tapahtuu, kun valitun solun/alueen osoite muuttuu. On tärkeää kiinnittää huomiota ohitettuun Target-argumenttiin. Kohde - viittaus valittuun solualueeseen. Vastaa tällä hetkellä valittuja soluja

Aika tärkeä pointti: Jos haluat tutustua tapahtumaproseduureihin paremmin, kiinnitä aina huomiota muuttujiin, jotka välitetään prosessin argumentteina. Useimmissa tapauksissa suosittelen näiden muuttujien käyttöä sen sijaan, että keksisin kaikenlaisia ​​mahdollisuuksia tapahtuman aiheuttaneen kohteen laskemiseen. Arkkitapahtumaan Työtaulukko_Muuta tämä on muuttuja Kohde. Liitä esimerkkinä alla oleva koodi mihin tahansa taulukkomoduuliin:

Private Sub Worksheet_Change(ByVal Target As Range) MsgBox "Muutettu solun osoite:"& Kohde.Osoite & _ "; Aktiivinen solun osoite: "& Selection.Address, vbInformation, "www.site" End Sub

Private Sub Worksheet_Change(ByVal Target As Range) MsgBox "Muutettu soluosoite: " & Kohde.Osoite & _ "; Aktiivinen solun osoite: " & Selection.Address, vbInformation, "www.site" End Sub

Kirjoita sen jälkeen arvo 5 soluun A1 ja paina Enter. Muuta-tapahtuma käynnistyy, kun muokkaus on valmis - ts. sillä hetkellä, kun painat Enter. Tässä tapauksessa siirrytään soluun A2 (useimmissa tapauksissa, ellei asetuksissa ole toisin määritetty) ja näyttöön tulee viesti, joka kertoo, että solua A1 on muutettu ja A2 on nyt valittu. Nuo. Kohde on aina linkki muutettuun soluun riippumatta siitä, mikä on valittuna. Tämä tapahtuma (Worksheet_Change) ei käynnisty, kun solujen arvot kaavoilla muuttuvat. Vain manuaalinen syöttö.

Huomautus: kaikkia sivustolla annettuja koodeja varten sinun tarvitsee vain avata vaadittu moduuli (kirja tai arkki) ja liitä ehdotettu koodi. Oikaisu voi olla tarpeen vain tapauksissa, joissa tiedostosi Sheet- tai Workbook-moduulissa on jo koodi vaaditussa tapahtumamenettelyssä.

KIRJA MODULI
Tämä kirja tai tämä työkirja - kuvassa 1: Tämä kirja .
Kirjamoduuliin pääsee vain VBA-editorin Project Explorerin kautta - kaksoisnapsauta ThisBook (This Workbook) tai hiiren oikealla painikkeella moduulissa - Katso koodi. Kirjamoduuli sisältää myös "sisäänrakennetut" tapahtumamenettelyt. Kuten arkin kohdalla, valitse objektiluettelosta (vasemmalla yläkulmalla) Työkirja. Oikeassa ikkunassa toimintojen valintaa varten, aivan kuten taulukkomoduulissa, kaikki kohteelle käytettävissä olevat menettelyt ovat Tämä kirja. Esimerkki kirjatapahtumamenettelyjen käytöstä löytyy artikkelista Kuinka seurata tapahtumaa (esimerkiksi solujen valintaa) missä tahansa kirjassa?
Mutta kaikki samat säännöt pätevät siellä - tärkeintä ei ole unohtaa argumentteja, jotka ovat saatavilla näistä menettelyistä ja jotka Excel itse välittää heille. Esimerkiksi Workbook_BeforeClose-tapahtumassa on Peruuta-argumentti käytettävissä. Tätä voidaan käyttää, jos et halua käyttäjän sulkevan työkirjan täyttämättä solua A1. Tässä on esimerkki tällaisesta koodista:

Private Sub Workbook_BeforeClose(Cancel As Boolean) If Me.Sheets("Report").Range("A1").Value = "" Then MsgBox "Sinun on täytettävä "Raportti"-arkin solu A1", vbCritical, "www .site" Cancel = True "peruuta kirjan sulkeminen End If End Sub

Koodista näet, että ”Raportti”-välilehdellä täytyy olla ei-tyhjä solu A1 (”Raportti”-arkin on oltava myös tässä työkirjassa). Mutta on vielä yksi asia - jotkut Minä. Tämä on lyhyt kutsu luokkamoduuliobjektille, tässä tapauksessa se vastaa ThisWorkbookin kutsumista. Ja vielä yksi esimerkki koodista ThisBook-moduulille, joka kieltää alkuperäisen kirjan tallentamisen, jolloin se voidaan tallentaa vain kohteen kautta Tallenna nimellä:

Yksityinen alityökirja_BeforeSave(ByVal SaveAsUI Boolean, Cancel As Boolean) Jos SaveAsUI = False Sitten "käyttää yksinkertaista tallennusta MsgBox "Tämä työkirja on malli. Voit tallentaa sen vain valitsemalla Tallenna nimellä", vbCritical, "www.site" Cancel = True "peruuta kirjan tallennus End If End Sub

Tämä voi olla tarpeen, jos työkirja on mallipohja, jossa on täyttökentät ja haluat estää alkuperäisen asiakirjan vahingossa tallentamisen. Vaikka tämä voidaan tehdä myös ilman makroja, kirja voidaan tallentaa vain luku -oikeuksin.

LOMAKEMODUULIT
Käyttäjälomake - kuvassa 1 Käyttäjälomake1 .
Sisältyy UserFormin ja sen objektien sisällä. User Formsissa periaatteessa kaikki on sidottu tarkasti itse lomakkeen tapahtumaproseduureihin ja tämän lomakkeen elementteihin (painikkeet, tekstilaatikot, yhdistelmäruudut (pudotusluettelot) jne.). On erittäin kätevää käyttää käyttäjälomakkeita sovelluksissasi kommunikoidaksesi käyttäjän kanssa. Koska Lomakkeiden avulla on erittäin kätevää seurata käyttäjien toimintoja ja voit estää pääsyn datataulukoihin piilottamalla ne. Lomake luodaan samalla tavalla kuin moduuli: napsauta hiiren kakkospainikkeella objektinhallintaikkunassa - Lisää-UserForm. Esimerkkejä koodeista lomakkeiden avulla löydät artikkeleista: Jokaisella käyttäjällä on oma taulukko/alue, Kuinka jättää vain numeroita tai vain tekstiä soluun?

LUOKAN MODUULI
ClassModule - kuvassa 1 Luokka 1 .
Useimmissa tapauksissa se on luotu erityisesti seuraamaan eri esineiden tapahtumia. On epätodennäköistä, että aloittelijoiden on opittava VBA, vaikka kaikki riippuu käsillä olevasta tehtävästä. Mutta yleensä aloittelijoiden oppiminen on liian vaikeaa. Joka tapauksessa, ennen kuin työskentelet luokkamoduulien kanssa, on parempi oppia työskentelemään ainakin vähän tavallisten moduulien kanssa ja kirjoittamaan menettelyjä itse. Tällaisen moduulin lisääminen: Napsauta objektinhallintaikkunassa hiiren kakkospainikkeella - Lisää-Luokka moduuli. Voit lukea lisää luokkamoduuleista ja niiden kanssa työskentelystä tästä artikkelista: Luokkamoduulien käyttäminen. Siellä on kuvattu kaikki perusperiaatteet ja liitteenä on esimerkkitiedosto.

MODUULIN POISTAMINEN
Minkä tahansa moduulin poistamisen vaiheet ovat samat kaikille tyypeille. Tätä varten sinun on siirryttävä haluamasi kirjan VBA-projektiin, valittava haluamasi moduuli, napsauta sitä hiiren kakkospainikkeella ja valitse näkyviin tulevasta valikosta Poista (moduulin nimi)...(Poista Moduuli1, Poista käyttäjälomake1, Poista luokka1 jne.). Tämän jälkeen näkyviin tulee ikkuna, jossa kysytään "Haluatko viedä (moduulin nimi) ennen sen poistamista?". Tämä tarkoittaa, että VBA kysyy: Haluatko säilyttää kopion moduulin koodista ennen sen poistamista? Pääsääntöisesti sinun pitäisi valita Ei. Mutta jos haluat tallentaa poistetun moduulin koodien tekstit erilliseen tiedostoon, hyväksy se napsauttamalla Kyllä. Sinua pyydetään valitsemaan kansio, johon moduuli tallennetaan, ja voit jopa antaa sille erillisen nimen.

SIIRTO-, TUONTI- ja VIENTIMODUULI
Joskus sinun on siirrettävä moduuli kirjasta toiseen. On olemassa useita tapoja tehdä tämä. Yksinkertaisin on avata molemmat kirjat, mennä Project Exploreriin - etsiä tarvittava moduuli - napata se hiiren vasemmalla painikkeella ja vetää se toisen kirjan projektiin vapauttamatta painiketta:


On syytä muistaa, että tällä tavalla voidaan siirtää ja kopioida vain vakiomoduulia, luokkamoduulia ja UserForm-moduulia. Arkki- ja kirjamoduulien koodit on siirrettävä pelkkänä tekstinä: mene ThisBook-moduuliin (josta haluamme kopioida) - kopioi koko koodi - mene toisen kirjan ThisBook-moduuliin ja liitä kopioitu :


Moduulin vienti (tallennus erilliseen tiedostoon)
Jos sinun on tallennettava vakiomoduuli, luokkamoduuli tai lomakemoduuli etkä siirrä sitä välittömästi toiseen työkirjaan, voit viedä moduulin. Miksi tämä voi olla tarpeen? Pääsääntöisesti koodien siirtämiseksi kotoa töihin lähetä ne jollekulle toiselle tietokoneelle (makroja sisältävän tiedoston lähettäminen saattaa olla yrityksen tietoturvapolitiikan kieltämistä) jne. Tämä tehdään yksinkertaisesti: napsauta hiiren kakkospainikkeella moduulia - Vie tiedosto.
Viedyillä moduuleilla on erilaisia ​​laajennuksia moduulityypistä riippuen. Vakiomoduuleille tämä on .bas(Moduuli1.bas), luokkamoduuleille - .cls(Luokka1.cls). Mutta lomakemoduuleille luodaan kaksi tiedostoa: UserForm1 .frm ja UserForm1 .frx. On tärkeää tallentaa ne yhdessä - toista ilman toista ei voida tuoda tiedostoon myöhemmin. .frx-tiedosto tallentaa niin sanotusti tietoa lomakkeen ja sen elementtien visuaalisesta näytöstä. .frm-tiedosto tallentaa suoraan lomakkeen ja palvelutietojen kooditekstit (lomakkeen nimi ja mitat, jotkin yleiset direktiivit ja linkki .frx-tiedostoon). Siksi ei ole suositeltavaa nimetä näitä kahta tiedostoa uudelleen ilman asianmukaisia ​​taitoja siinä toivossa, että kaikki toimii myöhemmin.
Moduulin tuonti (aiemmin viedyn siirtäminen uuteen kirjaan)
Jos haluat siirtää viedyn moduulin toiseen työkirjaan, sinun tarvitsee vain valita haluamasi projekti hiiren oikealla painikkeella objektinhallinnassa - Tuo moduuli-valitse haluamasi moduuli valintaikkunasta.
Voit viedä minkä tahansa moduulin, mutta et voi tuoda sitä. Vaikka taulukko- ja työkirjamoduulit viedään erillisiin tiedostoihin (muuten, .cls-tunnisteella), niitä ei voi tuoda tarkoitetussa muodossa. Ne tuodaan uusina luokkamoduuleina eikä sen enempää. Siksi koodien siirtämiseksi arkki- ja työkirjamoduuleista sinun on silti kopioitava ja liitettävä itse koodit.
Ja kaiken lisäksi voit siirtää moduuleja automaattisesti VBA-koodeilla: Kuinka lisätä prosessikoodi ohjelmallisesti, kopioida moduuli

Auttoiko artikkeli? Jaa linkki ystävillesi! Video oppitunnit

("Bottom bar":("textstyle":"static","textpositionstatic":"bottom","textautohide":true,"textpositionmarginstatic":0,"textpositiondynamic":"bottomleft","textpositionmarginleft":24," textpositionmarginright":24,"textpositionmargintop":24,"textpositionmarginbottom":24,"texteffect":"slide","texteffecteasing":"easeOutCubic","texteffectduration":600,"texteffectslidedirection":"left","texteffectslidedistance" :30,"texteffectdelay":500,"texteffectseparate":false"texteffect1":"slide","texteffectslidedirection1":"oikea","texteffectslidedistance1":120,"texteffecteasing1":"easeOutCubic","texteffectduration1":600 "tekstiefekti textcss":"näyttö:lohko; täyte:12px; text-align:left;","textbgcss":"näyttö:lohko; sijainti:absoluuttinen; ylhäällä: 0px; vasen: 0px; leveys:100%; korkeus:100% ; background-color:#333333; opacity:0.6; filter:alpha(opasiteetti=60);","titlecss":"display:block; sijainti:suhteellinen; font:bold 14px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff;","descriptioncss":"display:block; sijainti:suhteellinen; font:12px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; väri:#fff; margin-top:8px;","buttoncss":"display:block; sijainti:suhteellinen; margin-top:8px;","texteffectresponsive":true,"texteffectresponsivesize":640,"titlecssresponsive":"font-size:12px;","descriptioncssresponsive":"display:none !important;","buttoncssresponsive": "","addgooglefonts":false"googlefonts":"","textleftrightpercentforstatic":40))

Excelissä työskennellessäsi voit suorittaa monia erilaisia ​​tehtäviä, myös matemaattisia. Laaja valikoima ohjelmatyökaluja mahdollistaa vaadittujen toimien suorittamisen ilman lisäsovelluksia. Yksi näistä toiminnoista on moduuli - sitä ei käytetä kovin usein Excelissä, mutta sillä on tärkeä tarkoitus.

Mikä on moduuli

Määritelmän mukaan moduuli on matemaattinen operaatio, joka palauttaa luvun itseisarvon, eli itse luvun ilman etumerkkiä. Erikoista huolimatta moduulin käyttöä löytyy paitsi matemaattisten ongelmien ratkaisemisesta myös talousmalleista, fysiikasta ja monista muista eksakteista tieteistä.

Kuinka laskea moduuli Excelissä?

Moduulin laskemiseen Excelissä voidaan käyttää useita menetelmiä, joista yksinkertaisin on ABS-funktio. Se palauttaa valitun luvun tai matemaattisen lausekkeen itseisarvon.

Moduulifunktion syntaksi on hyvin yksinkertainen - Excelissä sinun tarvitsee vain asettaa "=ABS" kaavapalkkiin, sitten suluissa määritellään argumentti, joka voi olla numero, soluviittaus sekä jokin funktio, joka palauttaa numeerinen arvo. Tämä toiminto voidaan suorittaa myös napsauttamalla "Lisää toiminto" -painiketta, josta valitset sopivan toiminnon, tai käyttämällä hakua ja määrittämällä sana "moduuli" tai "ABS".

Moduulien summan laskeminen

Yksi Excelin yleisimmistä operaatioista on modulo summa. Sen avulla voit lisätä solujen arvoja ottamatta huomioon niiden etumerkkiä. Tämän toiminnon suorittamiseksi sinun ei tarvitse ensin laskea kunkin luvun moduulia ja käyttää sitten summafunktiota.

Suorittaessasi toimintoa, joka sisältää useita arvoja, Excelin moduuli voi käsitellä koko joukkoa tai solualuetta samanaikaisesti. Joten moduulisumman laskemiseksi riittää käyttää seuraavaa kyselyrakennetta:

=SUMMA(ABS(A1:A4))

Tässä sarakkeen A neljä ensimmäistä riviä osoittavat arvot, joille modulo-lisäys on suoritettava.

Esimerkkejä

Jotta ymmärtäisit paremmin Excelin moduulin kuvauksen ja sen toimintaperiaatteet, kannattaa harkita paria yksinkertaista esimerkkiä, jotka havainnollistavat toiminnon toimintaa.

Laskeaksesi tietyn luvun tai matemaattisen esimerkin moduulin, esimerkiksi 2:n ja 5:n välisen eron, sinun tulee käyttää seuraavaa merkintää:

=ABS(2-5)

Tämän kyselyn tulos on numero "3".

Jos sinun on laskettava matriisielementtien moduulien summa, joiden arvot on kirjoitettu taulukkoon, alueella A1:C3, nopein tapa löytää vastaus on konstruktio.

Eräs kollegani kysyi kerran minulta, kuinka Excel-kaavojen avulla lasketaan absoluuttisten arvojen summa tietyllä alueella. Tämä kysymys tulee esiin melko säännöllisesti foorumeilla, ja monilla käyttäjillä on usein suuria vaikeuksia tämän näennäisen yksinkertaisen toiminnon kanssa.

Valitettavasti Microsoft Excelissä ei ole sisäänrakennettua toimintoa, joka voisi suorittaa modulosummauksen, joten sinun on tehtävä vähän työtä saadaksesi oikean vastauksen.

Tässä meidän tietomme:

Näemme, että lukujen summa alueella A2:A8 antaa tuloksia -60 :

10 + 10 + 20 + -20 + 30 + -40 + -50 = -60

Jos ottaisimme huomioon absoluuttiset arvot (luvut ilman "-"-merkkiä), tulos olisi 180 :

10 + 10 + 20 + 20 + 30 + 40 + 50 = 180

Vaihtoehto 1 – Apusarakkeen käyttäminen

Mielestäni paras tapa laskea absoluuttisten arvojen summa Excelissä on käyttää apusaraketta. soluun B2 syötä kaava:

Venytä se sitten soluun B8. Toiminto ABS palauttaa luvun moduulin. Joten nyt voimme vain summata alueen B2:B8 ja tämä antaa meille tuloksen 180 .

SUMMA(B2:B8)
=SUMMA(B2:B8)

Esimerkissäni alue A1:A8 on täysimittainen tietotaulukko. Siksi, kun lisäät kaavan =ABS(A2) soluun KLO 2 Excel laajensi taulukkoa ja täytti automaattisesti kaikki sarakkeen solut. Seuraavaksi menin välilehteen Rakentaja(Design), joka sijaitsee välilehtiryhmässä Työskentely pöytien kanssa(Taulukon työkalut) ja laita rasti vaihtoehdon viereen Koko rivi(Rivi yhteensä). Kaikki arvot sarakkeessa B laskettiin automaattisesti yhteen ja tulos näytettiin erillisellä rivillä.

Käytä funktiota laskeaksesi summan kokonaisrivillä VÄLISUMMA(VÄLISUMMA). Tämä on yleinen funktio, joka voi suorittaa summauksen, aivan kuten funktio SUMMA(SUMMA). Mutta on myös merkittäviä eroja, esim. VÄLISUMMA(VÄLISUMMA) jättää kokonaan huomioimatta numerot, jotka on piilotettu manuaalisesti tai suodattamalla. Muutamia muita eroja on, mutta niillä ei ole juurikaan tekemistä tämän artikkelin aiheen kanssa.

Apusarakemenetelmän hyvä puoli on se, että se antaa sinulle enemmän joustavuutta, jos haluat käyttää tietoja tulevaisuudessa esimerkiksi taulukon tai pivot-taulukon muodossa. Lisäksi apusaraketta voidaan käyttää numeroiden lajitteluun modulo.

Tämä on epäilemättä erittäin hyvä tapa, mutta mitä tehdä, kun sinun on sovitettava kaikki yhteen kaavaan ilman apusarakkeita?

Vaihtoehto 2 – SUMMA-funktion käyttäminen taulukkokaavassa tai SUMMAT

Käytä taulukkokaavaa tai SUMMATUOTE(SUMPRODUCT) tällaisen ongelman ratkaiseminen on erittäin karkea lähestymistapa!

Toiminto SUMMA taulukkokaavassa:

SUMMA(ABS(A2:A8))
=SUMMA(ABS(A2:A8))

Kun syötät taulukkokaavan, muista painaa Ctrl+Shift+Enter.

Kaava kanssa SUMMPROOK:

SUMMATUOTE(ABS(A2:A8))
=SUMMATUOTE(ABS(A2:A8))

Ottaen huomioon, että tehokkaampaa toimintoa voidaan käyttää SUMIF(SUMIF) saadaksesi saman tuloksen (katso vaihtoehto 3), näitä kahta kaavaa käyttävä polku ei ole ensisijainen. Molemmat kaavat toimivat hyvin pienillä tietoalueilla, olen varma, että et edes huomaa eroa. Jos joudut summaamaan suuren määrän arvoja, työn nopeus hidastuu huomattavasti.

Vaihtoehto 3 - SUMIFin käyttö

Mielestäni tämä lähestymistapa on kätevin kaikista aiemmin luetelluista. Toiminnon käyttäminen SUMIF(SUMIF) arvot on jaettu 2 taulukkoon: positiivisilla ja negatiivisilla luvuilla ja summattuina. Nolla jätetään huomiotta ilmeisistä syistä. Sitten yksinkertaisesti vähennämme negatiivisen positiivisen summan (eli summaamme ne). Kaava näyttää tältä:

SUMIF(A2:A8,">0") - SUMIF(A2:A8"<0")
=SUMMA(A2:A8,">0")-SUMMA(A2:A8,"<0")

Se voidaan kirjoittaa myös tähän muotoon:

SUMMA(SUMMA(A2:A8,(">0","<0"})*{1,-1})
=SUM(SUMMA(A2:A8,(">0","<0"})*{1,-1})

Jos otamme kaavan ensimmäisen version, saamme seuraavan:

60-(-120) = 180

Kuvan viimeistelemiseksi lasketaan summa käyttämällä toista vaihtoehtoa:

SUMMA((60,-120)*(1,-1)) = SUMMA((60,120)) = 180

Uskon, että nyt tiedät kaikki perustavat laskea absoluuttisten arvojen summa Excelissä. Jos käytät erilaista lähestymistapaa lukujen summaamiseen modulo, jaa se kommenteissa. Onnea!

Excelissä. Tänään analysoimme kaavan "moduulin Excelissä" kirjoittamiseen. Luvun moduulia käytetään määrittämään luvun itseisarvo, esimerkiksi janan pituus. Alla on useita tapoja laskea luvun moduuli Excelissä, päätoiminto on ABS, ja lisälaskelmia IF- ja SQRT-funktioilla.

Kuten määritelmästä seuraa, luvun moduuli on ei-negatiivinen luku, itse luvun arvo. Nuo. jos meillä on negatiivinen luku -7, niin moduulissa se on yhtä suuri kuin 7. Moduuli kirjoitetaan kahdella pystysuoralla viivalla:

|-7| = 7

Mihin sitä käytetään? Jos meillä on vektorin arvo yhtä suuri kuin -7, jossa miinus osoittaa sen vastakkaista suuntaa, niin itse vektorin pituuden löytämiseksi meidän on laskettava luvun itseisarvo (koska pituus ei voi olla negatiivinen arvo ).

Myös aika usein negatiivista aika-arvoa laskettaessa löytyy moduulin käyttö, mutta tästä on oma osio.

Useimmissa ohjelmointikielissä luvun moduuli löytyy ABS-funktiosta (absoluuttisesta arvosta, Abs olute). Rakas Excel ei ole poikkeus.

Syötä kaava soluun:

Kuten funktion kuvauksesta seuraa, tällaisen kaavan arvo on 7.

Kuinka laskea moduuli käyttämällä vaihtoehtoista menetelmää IF

Pohjimmiltaan Modulus-funktion toiminta on määrittää, onko luku negatiivinen vai ei, ja välittää sen arvo. Eli pääehtofunktio =IF() on helppo käsitellä.

IF(A1<0;A1*-1;A1)

Itse unohdan aina ABS:n ja kirjoitan IF:n kautta.

Numeromoduuli ja SQRT

Kuten joku ehdotti minulle, on erityisen näppärä tapa löytää luvun moduuli käyttämällä SQRT-toimintoa. Nostamme luvun toiseen potenssiin ja löydämme lausekkeen juuren.

SQRT(A1*A1)

Itse en olisi tullut ajatelleeksi.

Liitän mukaan esimerkkitiedoston, jossa on 3 laskelmaa.

Numeromoduuli VBA:ssa

Kuten olemme jo sanoneet useimmissa ohjelmointikielissä, moduulin etsiminen tapahtuu ABS-toiminnolla. VBA ei ole poikkeus.

Jos haluat kirjoittaa laskutoimituksen koodina, kirjoita näin:

A=Abs(-7)

Tässä A on yhtä suuri kuin 7.

Yleensä näin on, jos tarvitset selvennystä, kirjoita kommentteihin ja älä ole ujo.

Jaa artikkelimme sosiaalisessa mediassa:

ABS-funktio etsii argumenttina välitetyn luvun itseisarvon ja palauttaa vastaavan arvon.

Esimerkkejä ABS-funktion käytöstä Excelissä

Määritä janan projektion pituus Ox-akselille, joka määritellään alkupisteen (-7;-4) ja loppupisteen (19;44) koordinaatilla.

Alkutiedot:

Määrittääksemme projektion pituuden Ox-akselille käytämme seuraavaa kaavaa:


B4 ja B2 ovat alku- ja loppukoordinaatit, vastaavasti. Näiden koordinaattien välinen ero on haluttu projektiopituus. Vastaavasti löydämme projektion arvon Oy-akselille. Tulokset:

Modulokaavan laskennan tuloksena määritettiin segmentin projektio Ox-akselille.



Laske pienimmän negatiivisen ja positiivisen luvun välinen ero

Etsi ero taulukon elementtien pienimpien ja pienimpien absoluuttisten arvojen välillä.

Alkutiedot:

Käytä laskemiseen seuraavaa kaavaa (taulukkokaava CTRL+SHIFT+Enter):

MIN-funktio etsii alueen pienimmän arvon. Voit etsiä pienimmän ei-negatiivisen luvun käyttämällä lauseketta MIN(ABS(B3:B12)).

Tulos:


Modulosumma Excelissä negatiivisille luvuille

Excel-laskentataulukko tallentaa kaikki yrityksen tapahtumat tietyn ajanjakson aikana. Negatiiviset arvot vastaavat kulutapahtumia. Laske kulujen määrä tietyltä ajanjaksolta.

Alkutiedot:

Laskemiseen käytämme seuraavaa taulukkokaavaa (CTRL+SHIFT+Enter):

Laskenta-algoritmi:

  1. Kun iteroidaan alueen B3:B12 elementtejä, jokainen arvo tarkistetaan, kuuluuko se negatiivisten lukujen alueelle.
  2. SUMMA-funktio palauttaa absoluuttisten arvojen summan (ABS-funktion avulla), jotka on otettu valituista negatiivisista lukuista.
  3. Jos negatiivisia lukuja (kulutapahtumat) ei ole, palautetaan arvo 0 (nolla).

Laskentatulokset:


Eli yrityksen kokonaiskulut määrätyllä ajanjaksolla olivat 29 020 euroa.

Excelin ABS-funktion käytön ominaisuudet

Funktiolla on seuraava syntaksi:

ABS(numero)

Tämän funktion ainoa argumentti (pakollinen) on numero. Se luonnehtii tiettyä reaalilukua, jonka absoluuttinen arvo määritetään.

Huomautukset 1:

  1. ABS-funktio ottaa argumentteja, jotka ovat numeerisia arvoja, numeroiden tekstimuotoisia esityksiä tai Boolen dataa (TRUE, FALSE).
  2. Jos kyseiselle funktiolle on välitetty argumenttina tekstimerkkijono, jota ei voida muuntaa numeeriseksi tietotyypiksi (esimerkiksi =ABS("teksti")), suoritustuloksena on virhekoodi #ARVO!.
  3. Tätä toimintoa voidaan käyttää taulukkokaavana suurten tietomäärien käsittelyyn.

Huomautukset 2:

  1. Lukumoduulin avulla voit määrittää minkä tahansa fyysisen suuren, joka voidaan matemaattisesti määrittää negatiiviseksi luvuksi, mutta todellisessa maailmassa sitä edustaa vain absoluuttinen (ei-negatiivinen) arvo, esimerkiksi segmentin pituus.
  2. Kun kirjoitat makroa, saatat joutua laskemaan myös joidenkin lukujen absoluuttiset arvot. VBA käyttää samannimistä ABS()-funktiota (kuten monet muut ohjelmointikielet).
  3. Excelissä on kaksi vaihtoehtoista tapaa saada suuren itseisarvo:
  • käyttämällä SQRT- ja POWER-funktioita eksponentin 2 kanssa. Esimerkiksi laskennan tulos =SQRT(TEHO(A1,2)) on aina luku positiivisten arvojen alueelta (edellyttäen, että solu A1 sisältää numeerisia tiedot);
  • käyttämällä IF-toimintoa. Esimerkiksi luvun -5 moduulin palauttamiseksi voit käyttää merkintää =IF(A1<0;A1*(-1);A1), где A1 – ячейка, в которой хранится значение -5.