Si të futni një modul në Excel. Përmbledhja e modulit në Excel. Përdorimi i shenjës së funksionit


Makrot (procedurat VBA) (63)
Të ndryshme (39)
Defektet dhe defektet e Excel (4)

Çfarë është një modul? Çfarë lloje modulesh ekzistojnë?

I gjithë kodi VBA duhet të ruhet diku. Për të ruajtur kodet në VBA, përdoren module, të cilat ruhen në një libër pune. Një libër mund të përmbajë sa më shumë module që dëshironi. Çdo modul, nga ana tjetër, mund të përmbajë shumë procedura (makro).
Të gjitha modulet e disponueshme në libër mund të shikohen përmes redaktorit VBA ( Alt+F11). Modulet e disponueshme shfaqen në anën e majtë të redaktuesit në Project Explorer.
Fig.1
Vetë eksploruesi i objektit mund të mos shfaqet si parazgjedhje dhe më pas duhet të shfaqet: klikoni Ctrl+R ose në menynë e redaktuesit VBA- Pamje-Project Explorer

Modulet ndahen në pesë lloje kryesore:

Në përgjithësi, për të qenë më të saktë, ekzistojnë vetëm dy lloje modulesh - module të rregullta dhe të klasës, sepse Moduli i fletës, Moduli i librit, Moduli i formularit të personalizuar Dhe Moduli i klasës janë në thelb module të klasës. Por i kam ndarë në mënyrë specifike në disa lloje, sepse... Këto lloje përdoren shpesh për shpjegime në tekste të ndryshme shkollore dhe në forume të ndryshme, dhe në vetë librat e Excel-it janë të ndryshëm në pamje dhe në disa funksionalitete.

Për të krijuar një të re modul standard, moduli i klasës (ClassModule) ose formulari i përdoruesit (UserForm) ju vetëm duhet të klikoni në dritaren e Project Explorer klikoni me të djathtën miun, zgjidhni artikullin Fut dhe më pas lloji i objektit që shtohet( Moduli, ClassModule, Forma e Përdoruesit). Ju gjithashtu mund të shtoni një modul përmes menysë: Fut-lloji i modulit.
Heqja është gjithashtu e lehtë: klikoni me të djathtën në modulin e dëshiruar në dritaren e projektit dhe zgjidhni Hiq. Më shumë detaje rreth fshirjes në fund të këtij artikulli:

MODULI STANDARD
në Fig. 1 Moduli 1 .
Lloji më i zakonshëm i moduleve që përdoret në shumicën e rasteve. Është në to që makroregjistruesi krijon makro të regjistruara. Të gjitha kodet dhe procedurat në module të tilla shkruhen manualisht ose kopjohen nga burime të tjera (një modul tjetër, nga kjo faqe, etj.). Në thelb, pjesa më e madhe e kodit është në modulet standarde. Ato janë krijuar për të ruajtur procedurat kryesore dhe variablat Publike, të cilat mund të aksesohen më vonë nga çdo modul. Si të krijoni një modul standard: në dritaren e eksploruesit të objektit, kliko me të djathtën - Fut-Moduli. Kur regjistroni me një regjistrues makro, modulet krijohen automatikisht dhe emërtohen automatikisht.
Shumë kode të publikuara në artikuj në faqe duhet të vendosen në module standarde. Për ta bërë këtë, thjesht krijoni një modul të ri standard, kopjoni tekstin e kodit nga faqja dhe ngjisni atë.

MODULI I FLETËS
Fleta 1 ose Fleta 1 - në Fig. 1: Fleta 1(Fleta 1), Fleta 2(Fleta 2), Fleta 3(Fleta 3).
Çdo fletë e librit ka modulin e vet të veçantë. Hyrja në modulin e fletës është më e lehtë sesa hyrja në module të tjera. Për ta bërë këtë, thjesht klikoni me të djathtën në shkurtoren e fletës dhe zgjidhni nga menyja e kontekstit paragraf Teksti burimor (Shiko kodin)
Në varësi të versionit të Excel, ky artikull në Rusisht mund të ketë të njëjtin emër: Shiko kodin ose Burimi :

Ju mund të merrni një rrugë më të vështirë - përmes redaktorit VBA: Alt+F11 dhe në dritaren e Project Explorer, klikoni dy herë mbi objektin me emrin e fletës ose kliko me të djathtën në modulin e fletës - Shiko kodin.
Kur vendosni kodin në modulin e fletës, duhet të mbani mend se kur kopjoni ose transferoni këtë fletë në një libër tjetër pune, kodi gjithashtu do të kopjohet, sepse është pjesë e gjethes. Ky është një plus dhe një minus në të njëjtën kohë. Avantazhi është se duke vendosur kodin në modulin e fletës, mund ta përdorni këtë fletë si shabllon për shpërndarje me butonat tuaj për thirrjen e këtyre kodeve (përfshirë krijimin e librave me kodin) dhe të gjitha funksionalitetet do të jenë të disponueshme. Ana negative janë disa nuanca të aksesimit të qelizave (më shumë detaje mund të gjenden në këtë artikull: Si të aksesoni një gamë nga VBA) dhe nevoja për të vendosur TË GJITHA procedurat e përdorura në këtë fletë, përndryshe kodet mund të funksionojnë me gabime kur transferohen në libra të tjerë të punës .

Një modul i fletës përmban procedura të integruara të ngjarjeve, secila prej të cilave është përgjegjëse për trajtimin e një ngjarjeje specifike në atë fletë. Ju mund t'i shikoni ato si kjo: zgjidhni një objekt (në foton më poshtë lista është në anën e majtë) Fleta e punës dhe zgjidhni një ngjarje në listën e duhur (kjo listë përmban të gjitha procedurat e disponueshme për fletën e zgjedhur):


Procedurat për të cilat ngjarjet janë përdorur tashmë janë theksuar me shkronja të zeza.

Emrat e procedurave të ngjarjeve janë mjaft informuese dhe shumica e tyre nuk kërkojnë dekodim të kujdesshëm. Por e konsideroj të nevojshme të përshkruaj pjesët më të rëndësishme të përdorura në çdo rast:

  • Aktivizoni- ndodh kur vetë fleta aktivizohet (por nuk ndodh nëse ka një kalim nga një libër pune në tjetrin dhe kjo fletë është aktive atje)
  • ParaDoubleClick- ndodh kur klikoni dy herë në çdo qelizë të fletës. Është e rëndësishme t'i kushtoni vëmendje argumenteve të miratuara: Synimi dhe Anulimi. Target - një lidhje me qelizën në të cilën është kryer veprimi; Anulo - është përgjegjës për anulimin e modalitetit të redaktimit
  • Përpara Klikoni me të djathtën- ndodh kur klikoni me të djathtën në çdo qelizë të fletës. Është e rëndësishme t'i kushtoni vëmendje argumenteve të miratuara: Synimi dhe Anulimi. Target - një lidhje me qelizën në të cilën është kryer veprimi; Anulo - është përgjegjës për anulimin e shfaqjes së menysë pop-up
  • Llogaritni- ndodh kur rillogaritni funksionet dhe formulat në një fletë
  • Ndryshimi- Ndodh kur vlerat e qelizave në një fletë ndryshojnë. Është e rëndësishme t'i kushtohet vëmendje argumentit Target që kalohet. Synimi - një referencë për qelizën që u ndryshua. Mund të ndryshojë nga qeliza aktive në kohën e përpunimit
  • Çaktivizo- ndodh kur kaloni nga kjo fletë në një fletë tjetër të të njëjtit libër pune
  • Ndiqni Hyperlink- ndodh kur ndiqni një hiperlidhje të krijuar në këtë fletë
  • Zgjedhja Ndryshimi- ndodh kur ndryshon adresa e qelizës/zonës së zgjedhur. Është e rëndësishme t'i kushtohet vëmendje argumentit Target që kalohet. Synimi - një referencë për gamën e qelizave që janë zgjedhur. Përputhet me qelizat e zgjedhura aktualisht

Një pikë mjaft e rëndësishme: Nëse dëshironi të njiheni më shumë me procedurat e ngjarjeve, gjithmonë kushtojini vëmendje variablave që kalohen si argumente në procedurë. Në shumicën e rasteve, unë rekomandoj përdorimin e këtyre variablave në vend që të shpikni të gjitha llojet e mundësive për llogaritjen e objektit që shkaktoi ndodhjen e ngjarjes. Për ngjarjen e fletës Fletë pune_Ndrysho kjo është një variabël Synimi. Si shembull, ngjitni kodin më poshtë në çdo modul të fletës:

Nën-Fletë pune private_Ndrysho (ByVal Target As Range) MsgBox "Adresa e modifikuar e qelisë:"& Objektivi.Adresa & _ "; Adresa e qelisë aktive: "& Selection.Address, vbInformation, "www.site" Fund Sub

Nën-Private Worksheet_Change(ByVal Target As Range) MsgBox "Adresa e ndryshuar e qelizës: " & Target.Address & _ "; Adresa e qelizës aktive: " & Selection.Address, vbInformation, "www.site" Fund Sub

Pas kësaj, shkruani vlerën 5 në qelizën A1 dhe shtypni Enter. Ngjarja "Ndrysho" do të ndizet kur të përfundojë redaktimi - d.m.th. në momentin kur shtypni Enter. Në këtë rast, do të bëhet një kalim në qelizën A2 (në shumicën e rasteve, përveç nëse specifikohet ndryshe në cilësimet) dhe do të shfaqet një mesazh që do të tregojë se qeliza A1 është ndryshuar dhe A2 tani është zgjedhur. ato. Synimi është gjithmonë një lidhje me qelizën e ndryshuar, pavarësisht nga ajo që është zgjedhur aktualisht. Kjo ngjarje (Worksheet_Change) nuk do të ndizet kur ndryshojnë vlerat e qelizave me formula. Vetëm hyrje manuale.

shënim: për të gjitha kodet e dhëna në faqe, ju vetëm duhet të hapni modulin e kërkuar (libër ose fletë) dhe ngjit kodin e sugjeruar. Një rregullim mund të jetë i nevojshëm vetëm në rastet kur moduli i Fletës ose i Librit të Punës i skedarit tuaj tashmë ka kod në procedurën e kërkuar të ngjarjes.

MODULI I LIBRIT
This Book or This Workbook - në Fig. 1: Ky libër .
Moduli i librit mund të aksesohet vetëm përmes Project Explorer të redaktorit VBA - klikoni dy herë mbi This Book (This Workbook) ose butonin e djathtë të miut në modul - Shiko kodin. Moduli i librit përmban gjithashtu procedura të ngjarjeve "të integruara". Ashtu si për një fletë, zgjidhni nga lista e objekteve (lart majtas) Fletore pune. Në dritaren e duhur për zgjedhjen e procedurave, ashtu si me modulin e fletës, do të jenë të disponueshme të gjitha procedurat për objektin. Ky libër. Një shembull i përdorimit të procedurave të ngjarjeve të librit mund të gjendet në artikullin Si të gjurmoni një ngjarje (për shembull, përzgjedhja e qelizave) në çdo libër?
Por të gjitha të njëjtat rregulla zbatohen atje - gjëja kryesore është të mos harrojmë për argumentet e disponueshme nga këto procedura dhe t'u kalohen atyre nga vetë Excel. Për shembull, ngjarja Workbook_BeforeClose ka në dispozicion një argument Anulo. Kjo mund të përdoret nëse nuk dëshironi që përdoruesi të mbyllë librin e punës pa plotësuar qelizën A1. Këtu është një shembull i një kodi të tillë:

Private Sub Workbook_BeforeClose(Cancel As Boolean) If Me.Sheets("Raport").Range("A1").Value = "" Pastaj MsgBox "Ju duhet të plotësoni qelizën A1 në fletën "Raporti", vbCritical, "www .site" Cancel = E vërtetë "anulo mbylljen e librit Fund If End Sub

Nga kodi mund të shihni se në fletën "Raport" duhet të ketë një qelizë jo bosh A1 (fleta "Raporti" duhet të ekzistojë gjithashtu në këtë libër pune). Por ka edhe një gjë - disa Unë. Kjo është një thirrje e shkurtër për objektin e modulit të klasës, në këtë rast është e barabartë me thirrjen e ThisWorkbook. Dhe një shembull tjetër i kodit për modulin ThisBook, i cili ndalon ruajtjen e librit origjinal, duke lejuar që ai të ruhet vetëm përmes artikullit Ruaj si:

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean) If SaveAsUI = False then "perdor thjesht save MsgBox "Ky libër pune është një shabllon. Mund ta ruani vetëm përmes Save As", vbCritical, "www.site" Cancel = True "cancel save the book End If End Sub

Kjo mund të jetë e nevojshme nëse libri i punës është një shabllon me fusha plotësuese dhe dëshironi të parandaloni ruajtjen aksidentale të dokumentit origjinal. Edhe pse kjo mund të bëhet edhe pa makro - libri mund të ruhet me leje vetëm për lexim.

MODULET FORMORE
Formulari i Përdoruesit - në Fig. 1 Forma e Përdoruesit 1 .
Përmban brenda UserForm dhe objektet e tij. Në Format e Përdoruesit, në thelb gjithçka është e lidhur pikërisht me procedurat e ngjarjeve të vetë formularit dhe me elementët e kësaj forme (Buttons, Text Boxes, Combobox (lista rënëse), etj.). Është shumë i përshtatshëm për të përdorur Format e Përdoruesit në aplikacionet tuaja për të komunikuar me përdoruesin. Sepse Përmes formularëve është shumë i përshtatshëm për të gjurmuar veprimet e përdoruesit dhe ju mund të mohoni aksesin në fletët me të dhëna duke i fshehur ato. Një formë krijohet në të njëjtën mënyrë si një modul: në dritaren e eksploruesit të objektit, kliko me të djathtën - Fut-Forma e Përdoruesit. Shembuj të kodeve që përdorin formularë mund të gjenden në artikujt: Çdo përdorues ka fletën/gamën e vet, Si të lëmë vetëm numra ose vetëm tekst në një qelizë?

MODULI I KLASËS
ClassModule - në Fig. 1 Klasa 1 .
Në shumicën e rasteve, është krijuar posaçërisht për të gjurmuar ngjarjet e objekteve të ndryshme. Nuk ka gjasa që fillestarët të kenë nevojë të mësojnë VBA, megjithëse gjithçka varet nga detyra në fjalë. Por zakonisht, fillestarët e kanë shumë të vështirë për të mësuar. Në çdo rast, përpara se të punoni me modulet e klasës, është më mirë të mësoni se si të punoni të paktën pak me module të rregullta dhe të shkruani vetë procedura. Si të shtoni një modul të tillë: në dritaren e eksploruesit të objektit, kliko me të djathtën - Fut-Moduli i klasës. Mund të lexoni më shumë rreth moduleve të klasës dhe punës me to në këtë artikull: Puna me modulet e klasës. Të gjitha parimet bazë përshkruhen atje dhe është bashkangjitur një skedar shembull.

HEQJA E NJË MODULI
Hapat për të hequr cilindo prej moduleve janë të njëjta për të gjitha llojet. Për ta bërë këtë, duhet të shkoni në projektin VBA të librit të dëshiruar, të zgjidhni modulin e dëshiruar, klikoni me të djathtën mbi të dhe zgjidhni nga menyja që shfaqet Hiq (emri i modulit)...(Hiq Module1, Remove UserForm1, Remove Class1, etj.). Pas kësaj, do të shfaqet një dritare duke pyetur "A dëshironi të eksportoni (emrin e modulit) përpara se ta hiqni atë?". Kjo do të thotë që VBA po pyet: Dëshiron të ruash një kopje të kodit të modulit përpara se ta fshish? Si rregull, ju duhet të zgjidhni Nr. Por nëse doni të ruani tekstin e kodeve nga moduli i hequr në një skedar të veçantë, atëherë pranoni duke klikuar Po. Do t'ju kërkohet të zgjidhni një dosje për të ruajtur modulin dhe madje mund t'i jepni një emër të veçantë.

MODULI I TRANSFERIMIT, IMPORTIT dhe EKSPORTIT
Ndonjëherë ju duhet të zhvendosni një modul nga një libër në tjetrin. Ka disa mënyra për ta bërë këtë. Më e thjeshta është të hapni të dy librat, shkoni te eksploruesi i projektit - gjeni modulin e kërkuar - kapeni me butonin e majtë të miut dhe, pa e lëshuar butonin, tërhiqeni në projektin e një libri tjetër:


Duhet mbajtur mend se vetëm moduli standard, moduli i klasës dhe moduli UserForm mund të transferohen dhe kopjohen në këtë mënyrë. Kodet e moduleve të fletës dhe librit do të duhet të transferohen si tekst i thjeshtë: shkoni te moduli ThisBook (nga ku duam të kopjojmë) - kopjoni të gjithë kodin - shkoni te moduli ThisBook i librit të dytë dhe ngjitni atë që është kopjuar. :


Eksportimi i një moduli (ruajtja në një skedar të veçantë)
Nëse ju duhet të ruani një modul standard, një modul klase ose një modul formulari dhe të mos e transferoni menjëherë në një libër tjetër pune, atëherë mund ta eksportoni modulin. Pse mund të jetë e nevojshme kjo? Si rregull, për të transferuar kodet nga shtëpia në punë, dërgojini dikujt në një kompjuter tjetër (dërgimi i një skedari me makro mund të ndalohet nga politika e sigurisë së kompanisë), etj. Kjo bëhet thjesht: kliko me të djathtën në modul - Eksporto skedarin.
Modulet e eksportuara kanë shtesa të ndryshme, në varësi të llojit të modulit. Për modulet standarde kjo është .bas(Module1.bas), për modulet e klasës - .cls(Klasa 1.cls). Por për modulet e formularit, do të krijohen dy skedarë: UserForm1 .frm dhe UserForm1 .frx. Është e rëndësishme t'i ruani ato së bashku - njëra pa tjetrën nuk mund të importohet në një skedar më vonë. Skedari .frx ruan informacione për shfaqjen vizuale të formularit dhe elementeve të tij, si të thuash. Skedari .frm ruan drejtpërdrejt tekstet e kodit për formularin dhe informacionin e shërbimit (emri dhe dimensionet e formularit, disa direktiva globale dhe një lidhje me skedarin .frx). Prandaj, nuk rekomandohet të riemërtoni këto dy skedarë pa aftësitë e duhura me shpresën se gjithçka do të funksionojë më vonë.
Importimi i një moduli (transferimi i një të eksportuar më parë në një libër të ri)
Për të transferuar një modul të eksportuar në një libër tjetër pune, thjesht duhet të klikoni me të djathtën mbi projektin e dëshiruar në eksploruesin e objekteve - Moduli i importit-zgjidhni modulin e kërkuar në kutinë e dialogut.
Mund të eksportoni çdo modul, por nuk mund ta importoni atë. Megjithëse modulet e fletës dhe të librit të punës eksportohen në skedarë të veçantë (nga rruga, me shtesën .cls), ato nuk mund të importohen në formën që synohet. Ato do të importohen si module të reja të klasës dhe asgjë më shumë. Prandaj, për të transferuar kodet nga modulet e fletëve dhe të librit të punës, do t'ju duhet ende të përdorni kopjimin dhe ngjitjen e vetë kodeve.
Dhe për ta përfunduar, ju mund të transferoni module automatikisht duke përdorur kodet VBA: Si të shtoni kodin e procedurës në mënyrë programore, kopjoni një modul

A ndihmoi artikulli? Ndani lidhjen me miqtë tuaj! Video mësime

("shiriti i poshtëm":("textstyle":"statike","textpositionstatic":"poshtë","textautohide":true,"textpositionmarginstatic":0,"textpositiondynamic":"poshtë majtas","textpositionmarginleft":24," textpositionmarginright":24,"textpositionmargintop":24,"textpositionmarginbottom":24,"texteffect":"rrëshqitje","texteffecteasing":"easeOutCubic","texteffectduration":600,"texteffectslidedirection":"left","efekti i tekstit" :30,"texteffectdelay":500,"texteffectseparate":false,"texteffect1":"rrëshqitje","texteffectslidedirection1":"djathtas","texteffectslidedistance1":120,"texteffecteasing1":"easeOutCubic:601"ext "texteffectdelay1":1000,"texteffect2":"rrëshqitje","texteffectslidedirection2":"djathtas", "texteffectslidedistance2":120,"texteffecteasing2":"easeOutCubic","texteffectduration2":600effectdelay,"text textcss":"text-align:left;","textbgcs":"ekrani:absolute-color:#333333; ","titlecss":"display:block; pozicioni: i afërm; font:bold 14px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; color:#fff;","descriptioncss":"display:block; pozicioni: i afërm; font:12px \"Lucida Sans Unicode\",\"Lucida Grande\",sans-serif,Arial; ngjyra:#fff; margin-top:8px;","buttoncss":"display:block; pozicioni: i afërm; margin-top:8px;","texteffectresponsive":true,"texteffectresponsivesize":640,"titlecssresponsive":"font-size:12px;","descriptioncssresponsive":"display:asnjë !important;","buttoncssresponsive" "","addgooglefonts":false,"googlefonts":"","textleftrightpercentforstatic":40))

Duke punuar në Excel, ju mund të kryeni shumë detyra të ndryshme, duke përfshirë ato matematikore. Një gamë e gjerë mjetesh programi ju lejon të kryeni veprimet e kërkuara pa kërkuar aplikacione shtesë. Një nga këto funksione është një modul - ai nuk përdoret shumë shpesh në Excel, por ka një qëllim të rëndësishëm.

Çfarë është një modul

Sipas përkufizimit, një modul është një veprim matematikor që kthen vlerën absolute të një numri, domethënë vetë numrin pa shenjën e tij. Pavarësisht specifikave, përdorimi i modulit mund të gjendet jo vetëm në zgjidhjen e problemeve matematikore, por edhe në modelet ekonomike, fizikën dhe shumë shkenca të tjera ekzakte.

Si të llogarisni një modul në Excel?

Për të llogaritur modulin në Excel, mund të përdorni disa metoda, më e thjeshta prej të cilave është funksioni ABS. Ai kthen vlerën absolute të numrit të zgjedhur ose të shprehjes matematikore.

Sintaksa e funksionit të modulit është shumë e thjeshtë - në Excel ju vetëm duhet të vendosni "=ABS" në shiritin e formulave, pastaj në kllapa specifikoni një argument, i cili mund të jetë një numër, një referencë qelize, si dhe një funksion që kthen. një vlerë numerike. Ky operacion mund të kryhet edhe duke klikuar butonin "Fut funksionin", ku zgjidhni funksionin e duhur, ose duke përdorur kërkimin, duke specifikuar fjalën "modul" ose "ABS".

Llogaritja e shumës së moduleve

Një nga operacionet e zakonshme në Excel është shuma e modulit. Kjo ju lejon të shtoni vlerat e qelizave pa marrë parasysh shenjën e tyre. Për të kryer këtë veprim, nuk keni nevojë të llogaritni fillimisht modulin e secilit numër dhe më pas të përdorni funksionin shuma.

Kur kryeni një operacion që përfshin vlera të shumta, një modul në Excel mund të funksionojë në një grup të tërë ose një gamë qelizash njëkohësisht. Pra, për të llogaritur shumën e modulit, mjafton të përdorni konstruksionin e mëposhtëm të pyetjes:

=SUM(ABS(A1:A4))

Këtu, në kolonën A, katër rreshtat e parë tregojnë vlerat për të cilat duhet të kryhet shtimi i modulit.

Shembuj

Për të konsoliduar të kuptuarit tuaj për përshkrimin e modulit në Excel dhe parimet e funksionimit të tij, ia vlen të merrni parasysh një çift shembuj të thjeshtë, duke demonstruar funksionimin e funksionit.

Për të llogaritur modulin e një numri të caktuar ose shembullin matematikor, për shembull, ndryshimin midis 2 dhe 5, duhet të përdorni shënimin e mëposhtëm:

=ABS (2-5)

Rezultati i kësaj pyetjeje do të jetë numri "3".

Nëse keni nevojë të llogaritni shumën e moduleve të elementeve të matricës, vlerat e të cilave janë shkruar në tabelë, me diapazonin A1:C3, më së shumti në një mënyrë të shpejtë gjetja e përgjigjes do të jetë një ndërtim.

Një kolegu im më pyeti një herë se si të përdor formulat e Excel për të llogaritur shumën e vlerave absolute në një interval të caktuar. Kjo pyetje ngrihet mjaft rregullisht në forume, dhe shumë përdorues shpesh kanë vështirësi të mëdha me këtë veprim në dukje të thjeshtë.

Fatkeqësisht, në Microsoft Excel Nuk ka asnjë funksion të integruar që mund të kryejë përmbledhjen e modulit, kështu që duhet të bëni pak punë për të marrë përgjigjen e saktë.

Këtu janë të dhënat tona:

Ne shohim se shuma e numrave në varg A2: A8 jep rezultate -60 :

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

Nëse do të merrnim parasysh vlerat absolute (numrat pa shenjën "-"), rezultati do të ishte 180 :

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

Opsioni 1 - Përdorimi i një kolone ndihmëse

Per mendimin tim, Menyra me e mire për të llogaritur shumën e vlerave absolute në Excel - përdorni një kolonë ndihmëse. Në qelizë B2 shkruani formulën:

Pastaj shtrijeni atë në qelizë B8. Funksioni ABS kthen modulin e një numri. Pra, tani ne thjesht mund të përmbledhim diapazonin B2:B8 dhe kjo do të na japë rezultatin 180 .

SHUMË (B2:B8)
=SUM(B2:B8)

Në shembullin tim diapazoni A1: A8është një tabelë e plotë e të dhënave. Prandaj, kur shtoni formulën =ABS(A2) në qelizë NË 2 Excel zgjeroi tabelën dhe mbushi automatikisht të gjitha qelizat në kolonë. Më pas shkova te skeda Konstruktor(Dizajni), i cili ndodhet në grupin e skedave Puna me tabela(Mjetet e tabelës) dhe vendosni një shenjë pranë opsionit Linja totale(Rreshti i përgjithshëm). Të gjitha vlerat në një kolonë B përmblidheshin automatikisht dhe rezultati u shfaq në një rresht të veçantë.

Për të llogaritur shumën në rreshtin total, përdorni funksionin NENTOTALE(SUBTOTALI). Ky është një funksion i përgjithshëm që mund të kryejë përmbledhje, ashtu si funksioni SHUMË(SHUMË). Por ka edhe dallime të rëndësishme, për shembull, NENTOTALE(SUBTOTAL) injoron plotësisht numrat që janë fshehur manualisht ose duke filtruar. Ka disa dallime të tjera, por këto kanë pak të bëjnë me temën e këtij artikulli.

E mira e metodës së kolonës ndihmëse është se ju jep më shumë fleksibilitet nëse keni nevojë të përdorni të dhënat në të ardhmen, për shembull, në formën e një tabele ose një tabele kryesore. Përveç kësaj, kolona ndihmëse mund të përdoret për të renditur modulin e numrave.

Kjo është pa dyshim shumë mënyrë e mirë, por çfarë të bëni kur duhet të vendosni gjithçka në një formulë pa asnjë kolonë ndihmëse?

Opsioni 2 - Përdorimi i funksionit SUM në një formulë grupi ose SUMPRODUCT

Përdorni një formulë grupi ose SUMPRODUCT(SUMPRODUCT) për të zgjidhur një problem të tillë është një qasje shumë e vrazhdë!

Funksioni SHUMË në një formulë grupi:

SUM(ABS(A2:A8))
=SUM(ABS(A2:A8))

Kur futni një formulë grupi, sigurohuni që të shtypni Ctrl+Shift+Enter.

Formula me PËRMBLEDHJE:

SUMPRODUCT(ABS(A2:A8))
=SUMPRODUCT(ABS(A2:A8))

Duke pasur parasysh se mund të përdoret një funksion më efikas SUMIF(SUMIF) për të marrë të njëjtin rezultat (shih opsionin 3), rruga që përdor këto dy formula bëhet jo e preferuar. Të dyja formulat funksionojnë shkëlqyeshëm me diapazonin e vogël të të dhënave, jam i sigurt se nuk do ta vini re as ndryshimin. Nëse keni nevojë për të përmbledhur nje numer i madh i vlerat, shpejtësia e funksionimit do të ngadalësohet dukshëm.

Opsioni 3 - Përdorimi i SUMIF

Unë mendoj se kjo qasje është më e përshtatshme nga të gjitha ato të listuara më parë. Duke përdorur funksionin SUMIF Vlerat (SUMIF) ndahen në 2 vargje: me numra pozitivë dhe negativë dhe të përmbledhur. Zero është injoruar për arsye të dukshme. Pastaj ne thjesht e zbresim negativin nga shuma pozitive (d.m.th. i përmbledhim ato). Formula duket si kjo:

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

Mund të shkruhet edhe në këtë formë:

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

Nëse marrim versionin e parë të formulës, marrim sa vijon:

60-(-120) = 180

Për të plotësuar figurën, le të llogarisim shumën duke përdorur opsionin e dytë:

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

Unë mendoj se tani ju i dini të gjitha mënyrat themelore për të llogaritur shumën e vlerave absolute në Excel. Nëse përdorni një qasje të ndryshme për modulin e shumës së numrave, ju lutemi ndajeni atë në komente. Paç fat!

Në Excel. Sot do të analizojmë formulën për të shkruar një "modul në Excel". Moduli i një numri përdoret për të përcaktuar vlerën absolute të një numri, për shembull gjatësinë e një segmenti. Më poshtë ne ofrojmë disa mënyra për të llogaritur modulin e një numri në Excel, funksioni kryesor është ABS dhe llogaritjet shtesë duke përdorur funksionet IF dhe SQRT.

Siç del nga përkufizimi, moduli i një numri është një numër jo negativ, vlera e vetë numrit. ato. nëse kemi një numër negativ -7, atëherë në modul ai do të jetë i barabartë me 7. Moduli shkruhet si dy vija vertikale:

|-7| = 7

Për çfarë përdoret? Nëse kemi një vlerë vektoriale të barabartë me -7, ku minus tregon drejtimin e kundërt të tij, atëherë për të gjetur gjatësinë e vetë vektorit, duhet të llogarisim vlerën absolute të numrit (pasi gjatësia nuk mund të jetë vlerë negative ).

Gjithashtu mjaft shpesh, përdorimi i një moduli mund të gjendet kur llogaritet një vlerë negative kohore, por ne kemi një seksion të veçantë për këtë.

Në shumicën e gjuhëve të programimit, moduli i një numri gjendet nga funksioni ABS (nga vlera absolute, Abs olute). Excel-i ynë i dashur nuk bën përjashtim.

Futni formulën në qelizë:

Siç vijon nga përshkrimi i funksionit, vlera e një formule të tillë do të jetë e barabartë me 7.

Si të llogarisni një modul duke përdorur IF, një metodë alternative

Në thelb, veprimi i funksionit të modulit është të përcaktojë nëse një numër është negativ apo jo dhe të kalojë vlerën e tij. Kjo do të thotë, funksioni i kushtit kryesor =IF () është i lehtë për t'u trajtuar.

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

Unë personalisht harroj gjithmonë për ABS dhe shkruaj përmes IF.

Moduli i numrit dhe SQRT

Siç më sugjeroi dikush, ekziston një mënyrë veçanërisht e zgjuar për të gjetur modulin e një numri duke përdorur funksionin SQRT. E ngremë numrin në fuqinë e dytë dhe gjejmë rrënjën e shprehjes.

SQRT(A1*A1)

Nuk do ta kisha menduar vetë.

Po bashkangjit një skedar shembull me 3 llogaritje.

Moduli i numrave në VBA

Siç kemi thënë tashmë në shumicën e gjuhëve programuese, gjetja e një moduli bëhet duke përdorur funksionin ABS. VBA nuk është përjashtim.

Për të shkruar llogaritjen në kod, shkruani diçka si kjo:

A=Abs(-7)

Këtu A do të jetë e barabartë me 7.

Në përgjithësi, kështu është, nëse keni nevojë për sqarime, shkruani në komente dhe mos kini turp.

Ndani artikullin tonë në rrjetet tuaja sociale:

Funksioni ABS gjen vlerën absolute të numrit të dhënë si argument dhe kthen vlerën përkatëse.

Shembuj të përdorimit të funksionit ABS në Excel

Përcaktoni gjatësinë e projeksionit të segmentit në boshtin Ox, i cili specifikohet nga koordinatat e pikave fillestare (-7;-4) dhe mbarimit (19;44).

Të dhënat fillestare:

Për të përcaktuar gjatësinë e projeksionit në boshtin Ox, ne përdorim formulën e mëposhtme:


B4 dhe B2 janë përkatësisht koordinatat e fillimit dhe të fundit. Dallimi midis këtyre koordinatave është gjatësia e dëshiruar e projeksionit. Në mënyrë të ngjashme, ne gjejmë vlerën e projeksionit në boshtin Oy. Rezultatet:

Si rezultat i llogaritjes së formulës së modulit, u përcaktua projeksioni i segmentit në boshtin Ox.



Llogaritni ndryshimin midis numrit më të vogël negativ dhe atij pozitiv

Gjeni ndryshimin midis vlerave absolute më të vogla dhe më të vogla të elementeve të grupit.

Të dhënat fillestare:

Për të llogaritur, përdorni formulën e mëposhtme (formula e grupit CTRL+SHIFT+Enter):

Funksioni MIN gjen vlerën më të vogël në një interval. Për të gjetur numrin më të vogël jo negativ, përdorni shprehjen MIN(ABS(B3:B12)).

Rezultati:


Shuma e modulit në Excel për numrat negativë

Një spreadsheet Excel regjistron të gjitha transaksionet e një biznesi gjatë një periudhe të caktuar kohore. Vlerat negative korrespondojnë me transaksionet e shpenzimeve. Llogaritni shumën e shpenzimeve për periudhën e specifikuar.

Të dhënat fillestare:

Për të llogaritur, ne përdorim formulën e mëposhtme të grupit (CTRL+SHIFT+Enter):

Algoritmi i llogaritjes:

  1. Gjatë përsëritjes përmes elementeve të diapazonit B3:B12, çdo vlerë kontrollohet për të parë nëse i përket diapazonit të numrave negativë.
  2. Funksioni SUM kthen shumën e vlerave absolute (përmes përdorimit të funksionit ABS) të marra nga një sërë numrash negativë të zgjedhur.
  3. Nëse nuk ka numra negativë (transaksione shpenzimesh), do të kthehet vlera 0 (zero).

Rezultatet e llogaritjes:


Domethënë, shpenzimet totale të ndërmarrjes për periudhën e specifikuar arritën në 29,020.

Karakteristikat e përdorimit të funksionit ABS në Excel

Funksioni ka sintaksën e mëposhtme:

ABS (numri)

Argumenti i vetëm i këtij funksioni (i nevojshëm) është një numër. Karakterizon një numër të caktuar real, vlera absolute e të cilit do të përcaktohet.

Shënime 1:

  1. Funksioni ABS merr argumente që janë vlera numerike, paraqitje tekstuale të numrave ose të dhëna Boolean (TRUE, FALSE).
  2. Nëse një varg teksti i kalohet si argument funksionit në fjalë, i cili nuk mund të konvertohet në një lloj të dhënash numerike (për shembull, =ABS("tekst")), rezultati i ekzekutimit do të jetë kodi i gabimit #VALUE!.
  3. Ky funksion mund të përdoret si një formulë grupi për të punuar me diapazon të madh të të dhënave.

Shënime 2:

  1. Moduli i një numri ju lejon të përcaktoni çdo sasi fizike që mund të specifikohet matematikisht si një numër negativ, por në botën reale ai përfaqësohet vetëm nga një vlerë absolute (jo negative), për shembull, gjatësia e një segmenti.
  2. Kur shkruani një makro, mund t'ju duhet gjithashtu të llogaritni vlerat absolute të disa numrave. VBA përdor funksionin ABS() me të njëjtin emër (siç bëjnë shumë gjuhë të tjera programimi).
  3. Në Excel, ekzistojnë dy mënyra alternative për të marrë vlerën absolute të një sasie:
  • duke përdorur funksionet SQRT dhe POWER me një eksponent 2. Për shembull, rezultati i llogaritjes =SQRT(POWER(A1,2)) do të jetë gjithmonë një numër nga diapazoni i vlerave pozitive (me kusht që qeliza A1 të përmbajë numerike të dhëna);
  • duke përdorur funksionin IF. Për shembull, për të kthyer modulin e numrit -5, mund të përdorni shënimin =IF(A1<0;A1*(-1);A1), где A1 – ячейка, в которой хранится значение -5.