Cum se configurează smartphone-uri și PC-uri. Portal informativ

Macro vizuale de bază. Excel acros pentru începători

Puțini oameni știu că prima versiune a popularului produs Microsoft Excel a apărut în 1985. De atunci, a trecut prin mai multe modificări și este solicitat de milioane de utilizatori din întreaga lume. În același timp, mulți lucrează cu doar o mică parte din capacitățile acestui procesor de foi de calcul și nici măcar nu știu cum le-ar putea fi ușurată viața prin programarea în Excel.

Ce este VBA

Programarea în Excel se realizează folosind limbajul de programare Visual Basic for Application, care este inițial încorporat în cel mai faimos procesor de foi de calcul de la Microsoft.

Experții atribuie relativa ușurință de dezvoltare meritelor sale. După cum arată practica, chiar și utilizatorii care nu au abilități profesionale de programare pot stăpâni elementele de bază ale VBA. Particularitățile VBA includ execuția scriptului în mediul aplicațiilor de birou.

Dezavantajul programului este problemele asociate cu compatibilitatea diferitelor versiuni. Acestea sunt cauzate de faptul că codul programului VBA se referă la funcționalitatea care este prezentă în noua versiune a produsului, dar nu și în cea veche. De asemenea, dezavantajele includ deschiderea excesiv de mare a codului pentru modificare de către o persoană neautorizată. Cu toate acestea, Microsoft Office, precum și IBM Lotus Symphony permit utilizatorului să cripteze sămânța și să seteze o parolă pentru ao vizualiza.

Obiecte, colecții, proprietăți și metode

Acestea sunt conceptele care trebuie să fie înțelese de cei care urmează să lucreze în mediul VBA. În primul rând, trebuie să înțelegeți ce este un obiect. În Excel, aceasta este o foaie, un registru de lucru, o celulă și un interval. Aceste obiecte au o ierarhie specială, adică. se supune unul altuia.

Principala este Aplicația, care corespunde programului Excel în sine. Acesta este urmat de Caiete de lucru, Fișe de lucru și Interval. De exemplu, pentru a face referire la celula A1 pe o anumită foaie, trebuie să specificați o cale bazată pe ierarhie.

În ceea ce privește conceptul de „colecție”, este un grup de obiecte din aceeași clasă, care în înregistrare are forma ChartObjects. Elementele sale individuale sunt, de asemenea, obiecte.

Următorul concept este proprietățile. Ele sunt o caracteristică necesară a oricărui obiect. De exemplu, pentru Interval, este Valoare sau Formula.

Metodele sunt comenzi care indică ceea ce trebuie făcut. Când scrieți cod în VBA, acestea trebuie separate de obiect printr-un punct. De exemplu, așa cum se va arăta mai târziu, comanda Cells (1,1) .Select este foarte des folosită la programarea în Excel. Înseamnă că trebuie să selectați o celulă cu coordonate

Selection.ClearContents este adesea folosit cu acesta. Executarea acestuia înseamnă ștergerea conținutului celulei selectate.

Cum să înceapă

Apoi trebuie să accesați aplicația VB, pentru care este suficient să utilizați combinația de taste „Alt” și „F11”. Mai departe:

  • în bara de meniu situată în partea de sus a ferestrei, faceți clic pe pictograma de lângă pictograma Excel;
  • selectați echipa Mudule;
  • salvați făcând clic pe pictograma cu imaginea;
  • scrieți, să spunem, o schiță a codului.

Arata cam asa:

Subprogram ()

„Codul nostru

Vă rugăm să rețineți că linia ""Codul nostru "va fi evidențiată într-o culoare diferită (verde). Motivul este în apostroful de la începutul rândului, ceea ce înseamnă că urmează un comentariu.

Acum puteți scrie orice cod și puteți crea un instrument nou pentru dvs. în VBA Excel (vezi exemple de programe de mai jos). Desigur, cei care sunt familiarizați cu elementele de bază ale Visual Basic le vor găsi mult mai ușor. Cu toate acestea, chiar și cei care nu le au, dacă dorește, se vor putea obișnui destul de repede.

macrocomenzi Excel

Acest nume ascunde programele scrise în limbajul Visual Basic for Application. Astfel, programarea în Excel înseamnă crearea de macro-uri cu codul potrivit. Datorită acestei caracteristici, procesorul de foi de calcul Microsoft se dezvoltă singur, adaptându-se la cerințele unui anumit utilizator. Odată ce v-ați dat seama cum să creați module pentru scrierea macrocomenzilor, sunteți gata să începeți să vă uitați la exemple specifice de programe Excel VBA. Cel mai bine este să începeți cu cele mai rudimentare coduri.

Exemplul 1

Sarcină: scrieți un program care va copia valoarea conținutului unei celule și apoi va scrie în alta.

Pentru asta:

  • deschide fila „Vizualizare”;
  • accesați pictograma Macro-uri;
  • faceți clic pe „Înregistrați macrocomandă”;
  • completați formularul deschis.

Pentru simplitate, lăsați „Macro1” în câmpul „Nume macro” și introduceți, de exemplu, hh în câmpul „Comandă rapidă de la tastatură” (aceasta înseamnă că puteți porni programul cu comanda blitz „Ctrl + h”). Apasa Enter.

Acum, când înregistrarea macro a început deja, conținutul unei celule este copiat în alta. Revine la pictograma originală. Faceți clic pe „Înregistrați macrocomandă”. Această acțiune înseamnă sfârșitul programului.

  • mergeți din nou la linia „Macro-uri”;
  • selectați „Macro 1” din listă;
  • faceți clic pe „Run” (aceeași acțiune este pornită prin lansarea comenzii rapide de la tastatură „Ctrl + hh”).

Ca urmare, are loc acțiunea care a fost efectuată în timpul înregistrării macro-ului.

Este logic să vedem cum arată codul. Pentru a face acest lucru, reveniți la linia „Macro-uri” și faceți clic pe „Schimbare” sau „Enter”. Drept urmare, se găsesc într-un mediu VBA. De fapt, codul macro-ului în sine este situat între liniile Sub Macro1 () și End Sub.

Dacă s-a efectuat copierea, de exemplu, din celula A1 în celula C1, atunci una dintre liniile de cod va arăta ca Interval („C1”). Tradus, arată ca „Range (" C1 "). Selectați, cu alte cuvinte, trece la VBA Excel, la celula C1.

Comanda ActiveSheet.Paste încheie partea activă a codului. Înseamnă scrierea conținutului celulei selectate (în acest caz A1) în celula selectată C1.

Exemplul 2

Buclele VBA vă ajută să creați diverse macrocomenzi în Excel.

Buclele VBA vă ajută să creați o varietate de macrocomenzi. Să presupunem că avem o funcție y = x + x 2 + 3x 3 - cos (x). Este necesar să creați o macrocomandă pentru a obține graficul acesteia. Acest lucru se poate face numai folosind bucle VBA.

Pentru valoarea inițială și finală a argumentului funcției, luați x1 = 0 și x2 = 10. În plus, trebuie să introduceți o constantă - valoarea pentru pasul de schimbare a argumentului și valoarea inițială pentru contor.

Toate exemplele de macrocomenzi VBA Excel sunt create folosind aceeași procedură ca cea prezentată mai sus. În acest caz particular, codul arată astfel:

Subprogram ()

coroană = 0,1

Faceți în timp ce x1< x2 (цикл будет выполняться пока верно выражение x1 < x2)

y = x1 + x1 ^ 2 + 3 * x1 ^ 3 - Cos (x1)

Celule (i, 1) .Valoare = x1 (valoarea lui x1 este scrisă în celula cu coordonatele (i, 1))

Celule (i, 2) .Valoare = y (valoarea y este scrisă în celula cu coordonatele (i, 2))

i = i + 1 (contorul este activ);

x1 = x1 + shag (argumentul este schimbat de dimensiunea pasului);

End Sub.

Ca rezultat al rulării acestei macrocomenzi în Excel, obținem două coloane, prima dintre care conține valorile pentru x, iar a doua pentru y.

Apoi este trasat un grafic folosindu-le într-un mod standard pentru Excel.

Exemplul 3

Pentru a implementa bucle în VBA Excel 2010, ca și în alte versiuni, împreună cu construcția Do While deja dată, se folosește For.

Luați în considerare un program care creează o coloană. Fiecare celulă va conține pătratele numărului rândului corespunzător. Utilizarea constructului For vă va permite să o scrieți foarte scurt, fără a utiliza un contor.

Mai întâi trebuie să creați o macrocomandă așa cum este descris mai sus. Apoi, notăm codul în sine. Presupunem că ne interesează valorile pentru 10 celule. Codul arată așa.

Pentru i = 1 până la 10 În continuare

Comanda este tradusă în limbajul „uman” ca „Repetați de la 1 la 10 în trepte de unu”.

Dacă sarcina este de a obține o coloană cu pătrate, de exemplu, toate numerele impare din intervalul de la 1 la 11, atunci scriem:

Pentru i = 1 până la 10 pasul 1 În continuare.

Aici pasul este un pas. În acest caz, este egal cu doi. În mod implicit, absența acestui cuvânt în buclă înseamnă că pasul este unul.

Rezultatele obţinute trebuie salvate în celule cu numărul (i, 1). Apoi, la fiecare început al ciclului, cu o creștere a i cu dimensiunea pasului, și numărul rândului va crește automat. Astfel, codul va fi optimizat.

În general, codul va arăta astfel:

Subprogram ()

Pentru i = 1 la 10 Pasul 1 (puteți scrie pur și simplu Pentru i = 1 la 10)

Celule (i, 1) .Valoare = i ^ 2 (adică valoarea pătratului i este scrisă în celula (i, 1))

În continuare (într-un anumit sens, joacă rolul unui contor și înseamnă un alt început al buclei)

End Sub.

Dacă totul este făcut corect, inclusiv înregistrarea și rularea unei macrocomenzi (consultați instrucțiunile de mai sus), atunci de fiecare dată când este apelată, se va obține o coloană cu dimensiunea specificată (în acest caz, formată din 10 celule).

Exemplul 4

În viața de zi cu zi, destul de des este nevoie să luați cutare sau cutare decizie, în funcție de o anumită condiție. Nu puteți face fără ele în VBA Excel. Exemple de programe, în care se alege cursul ulterioar al execuției algoritmului și nu este predeterminat inițial, cel mai adesea folosesc constructul If... Then (pentru cazuri complexe) If... Then... END If.

Să luăm în considerare un caz concret. Să presupunem că trebuie să creați o macrocomandă pentru Excel, astfel încât celula cu coordonatele (1,1) să fie scrisă:

1 dacă argumentul este pozitiv;

0 dacă argumentul este nul;

-1 dacă argumentul este negativ.

Crearea unei astfel de macrocomenzi pentru Excel începe în mod standard, utilizând tastele rapide Alt și F11. În continuare, se scrie următorul cod:

Subprogram ()

x = Celule (1, 1) .Valoare (această comandă atribuie x valoarea conținutului celulei la coordonatele (1, 1))

Dacă x> 0 Atunci Celule (1, 1) .Valoare = 1

Dacă x = 0 Atunci Celule (1, 1) .Valoare = 0

Dacă x<0 Then Cells(1, 1).Value = -1

End Sub.

Rămâne să rulați macro-ul și să obțineți valoarea dorită pentru argument în Excel.

Funcții VBA

După cum probabil ați observat, programarea în cel mai faimos procesor de foi de calcul Microsoft nu este chiar atât de dificilă. Mai ales dacă înveți cum să folosești funcțiile VBA. În total, acest limbaj de programare, creat special pentru scrierea aplicațiilor în Excel și Word, are aproximativ 160 de funcții. Ele pot fi împărțite în mai multe grupuri mari. Acest:

  • Funcții matematice. Aplicându-le argumentului, obțineți valoarea cosinusului, logaritmului natural, părții întregi etc.
  • Funcții financiare. Datorită prezenței lor și utilizării programării în Excel, puteți obține instrumente eficiente pentru calcule contabile și financiare.
  • Funcții de procesare a matricei. Acestea includ Array, IsArray; LBound; UBound.
  • Funcții Excel VBA pentru șir. Acesta este un grup destul de mare. Include, de exemplu, funcțiile Space pentru a crea un șir cu un număr de spații egal cu un argument întreg sau Asc pentru a traduce caracterele în cod ANSI. Toate sunt utilizate pe scară largă și vă permit să lucrați cu rânduri în Excel, creând aplicații care facilitează foarte mult lucrul cu aceste tabele.
  • Funcții de conversie a tipurilor de date. De exemplu, CVar returnează valoarea argumentului Expression transformându-l în tipul de date Variant.
  • Funcții pentru lucrul cu datele. Acestea le extind semnificativ pe cele standard. De exemplu, funcția WeekdayName returnează numele (complet sau parțial) al zilei săptămânii după numărul său. Cronometrul este și mai util. Vă oferă numărul de secunde care au trecut de la miezul nopții până la un anumit moment al zilei.
  • Funcții pentru conversia unui argument numeric în diferite sisteme numerice. De exemplu, Oct emite un număr în reprezentare octală.
  • Funcții de formatare. Cel mai important dintre acestea este Formatul. Returnează o Variantă cu o expresie formatată conform instrucțiunilor date în descrierea formatului.
  • etc.

Studierea proprietăților acestor funcții și aplicarea lor va extinde în mod semnificativ domeniul de aplicare al Excel.

Exemplul 5

Să încercăm să trecem la rezolvarea unor probleme mai complexe. De exemplu:

Având în vedere un document pe hârtie al raportului privind nivelul efectiv al costurilor întreprinderii. Necesar:

  • să-și dezvolte partea de șablon folosind procesorul de foi de calcul Excel;
  • creați un program VBA care va solicita datele inițiale pentru a le completa, efectuați calculele necesare și completați-le în celulele corespunzătoare ale șablonului.

Să luăm în considerare una dintre soluții.

Crearea șablonului

Toate acțiunile sunt efectuate pe o foaie standard în Excel. Celulele libere sunt rezervate pentru introducerea datelor despre numele companiei de consum, valoarea costurilor, nivelul acestora și cifra de afaceri. Întrucât numărul de companii (companii) pentru care se întocmește raportul nu este fix, celulele pentru introducerea valorilor pe baza rezultatelor și numele complet al specialistului nu sunt rezervate în prealabil. Foaia de lucru primește un nou nume. De exemplu, „Օ rapoarte”.

Variabile

Pentru a scrie un program pentru completarea automată a unui șablon, trebuie să selectați denumirile. Acestea vor fi folosite pentru variabile:

  • NN - numărul rândului curent al tabelului;
  • TP și TF - cifra de afaceri planificată și efectivă;
  • SF și SP - costuri efective și planificate;
  • IP și IF - nivelul planificat și efectiv al costurilor.

Să notăm cu aceleași litere, dar cu „prefixul” Itog, acumularea totalului pentru această coloană. De exemplu, ItogTP - se referă la o coloană de tabel intitulată „Cifra de afaceri proiectată”.

Rezolvarea unei probleme folosind programarea VBA

Folosind denumirile introduse, obținem formule pentru abateri. Dacă doriți să calculați în%, avem (F - P) / P * 100, iar în total - (F - P).

Rezultatele acestor calcule pot fi introduse cel mai bine direct în celulele corespunzătoare din foaia de calcul Excel.

Pentru totalurile factice și prognozate, acestea sunt obținute folosind formulele ItogP = ItogP + P și ItogF = ItogF + F.

Pentru abateri, utilizați = (ItogF - ItogP) / ItogP * 100, dacă calculul se efectuează în procente, iar în cazul valorii totale - (ItogF - ItogP).

Rezultatele, din nou, sunt scrise imediat în celulele corespunzătoare, deci nu este nevoie să le atribuiți variabilelor.

Înainte de a începe programul creat, trebuie să salvați registrul de lucru, de exemplu, sub numele „Report1.xls”.

Butonul „Creați tabel de raportare” trebuie apăsat o singură dată după introducerea informațiilor din antet. Ar trebui să știi și alte reguli. În special, butonul „Adăugați rând” trebuie apăsat de fiecare dată după introducerea în tabel a valorilor pentru fiecare tip de activitate. După ce ați introdus toate datele, trebuie să faceți clic pe butonul „Finish” și apoi să treceți la fereastra „Excel”.

Acum știi cum să rezolvi sarcinile Excel folosind macrocomenzi. Abilitatea de a utiliza vba excel (a se vedea exemplele de programe de mai sus) poate fi necesară și pentru a lucra în mediul celui mai popular editor de text „Word”. În special, puteți crea butoane de meniu scriind, așa cum se arată chiar la începutul articolului, sau scriind cod, datorită căruia multe operații asupra textului pot fi efectuate prin apăsarea butoanelor de serviciu sau prin fila Vizualizare și Pictograma Macro-uri.

Este adesea dificil pentru cei care nu au programat niciodată să citească exemple de programe imediat, trebuie mai întâi să înțelegeți principiile de bază, să învățați cuvintele cu care operează programatorii. Această pagină este special concepută pentru cei începători.

Deci, ce sunt macrocomenzile și cum le scrii?

Macro-urile sunt programe în Excel. Macro-urile pot face orice poate face un utilizator manual. Sunt utile pentru prelucrarea datelor sau pentru automatizarea acțiunilor comune.

Macro-urile sunt scrise în VBA - Visual Basic for Applications. Această abreviere merită reținută și utilizată în interogările de căutare atunci când găsiți informațiile de care aveți nevoie. VBA este un limbaj ierarhic, orientat pe obiecte. Aceasta înseamnă că va trebui să gestionați obiecte care sunt subordonate unul altuia. De exemplu, un registru de lucru Excel este un obiect. Sunt foi în el, sunt celule pe foi. Foile, celulele, intervalele și multe altele sunt obiecte. Subordonarea poate fi echivalată aproximativ cu imbricarea - de exemplu, o celulă este imbricată într-o foaie, iar o foaie este într-o carte.

Puteți efectua o serie de acțiuni cu obiecte, de exemplu, deschiderea, activarea, selectarea, ștergerea, copierea și multe altele.

Obiectele au proprietăți. De exemplu, o foaie poate fi vizibilă sau ascunsă, activă sau inactivă. O celulă are multe proprietăți care sunt, de asemenea, cunoscute de toată lumea: umplere, chenare, culoare și dimensiune text, aliniere. Proprietățile, desigur, pot fi modificate.

Deci, obiectele sunt „încorporate” unele în altele și au proprietăți diferite. Să-i cunoaștem mai bine.

Nu vom prezenta aici întreaga listă, pentru că este imensă. Ne vom restrânge la ceea ce este necesar chiar și în prima etapă.

Obiecte:

Caietul de lucru este un registru de lucru Excel.

Foaie - foaie.

Raza - raza de actiune.

Celulă – celulă.

Rândul este un rând.

Coloana este o coloană.

Acțiuni cu obiecte

Activare - activare, adică „pune cursorul”. Puteți activa o carte, o foaie, o celulă.

Selectare - selectare. Puteți selecta unul sau mai multe rânduri, una sau mai multe coloane, un interval sau o celulă.

Șterge - șterge. De asemenea, puteți șterge rânduri și coloane, intervale de celule sau o celulă, foaie.

Copiere - copiere.

Și există o acțiune separată Paste - paste. Dacă în spatele tuturor acțiunilor anterioare se află cuvântul „ce?” (ce să activezi, ce să copiezi), apoi cuvântul „paste” este urmat de întrebarea „unde?”. Prin urmare, atunci când scrieți un program, trebuie să indicați nu ce să introduceți, ci unde să îl introduceți.

Pe lângă executarea programelor, Excel poate „da informații” conform comenzilor date. Iată câteva exemple de astfel de comenzi:

Sheets.Count - Oferă numărul de foi din carte.

Data - Returnează data de astăzi în format șir.

Len ("șir") - dă lungimea șirului în numărul de caractere. În acest exemplu, lungimea este de 6.

Acum trebuie să spunem câteva cuvinte despre tipurile de date (variabile).

Pentru început, este suficient să știi un lucru: datele sunt numere și există șiruri de caractere, adică text. Cu numere, puteți efectua unele acțiuni (adăugați, etc.), cu șiruri - altele (recunoașteți primul caracter, de exemplu).

Toate valorile șirurilor în VBA sunt citate. Toate titlurile/numele cărților sau foilor sunt text, adică o valoare șir, deci ar trebui să fie întotdeauna înconjurate de ghilimele.

Atât numerele, cât și șirurile de caractere pot fi atribuite variabilelor.

De exemplu:

S = „Bună ziua”

Puteți suprascrie valorile variabilelor, de exemplu, astfel:

I = i + 10

S = s & "lume!"

După aceea i = 11 și s = "Bună lume!"

Aici ne confruntăm cu prima operațiune asupra valorilor șirurilor. Semnul & înseamnă că cele două linii trebuie să fie concatenate. Ordinea este importantă: dacă scrii

s = ", lume!" & s, obținem s = ", lume! Bună".

Deoarece variabila s conține deja ghilimele, nu trebuie să o încadrați între ghilimele atunci când o utilizați. Dimpotrivă, absența ghilimelelor îi spune lui Excel că ar trebui să fie perceput ca o variabilă și nu ca un text. Adică, înregistrează:

S = „Bună lume!”

H = "Bună lume!"

va da același rezultat - atribuiți valoarea „Bună ziua, lume!” variabilei h.

Dar recordul

S = „Bună lume!”

H = „s”

va atribui valoarea „s” variabilei h.

Trebuie să spun că obiectele din Excel sunt uneori scrise la singular, alteori la plural. Cum să ne amintim în ce caz ce se folosește? Puteți folosi următoarea regulă: tot ce este în Excel "nu este mult, se scrie la plural, tot ce este într-un singur exemplar este în singurul. În Excel" sunt multe cărți, multe foi și multe de celule. Toate sunt la fel pentru Excel „i și pot fi distinse numai prin nume sau coordonate. Prin urmare, programul folosește pluralul. De exemplu:

Caiete de lucru („Cartea 1”). Activați

Foi („Sheet1”). Copiere

Rânduri (1) .Șterge

Celulele sunt definite de coordonate: prima este numărul rândului, a doua este coloana.

De exemplu, comanda

Celulele (1,1) .Activare

va plasa cursorul în celula din stânga sus.

Vă puteți „referi” la cărți și foi nu numai după nume, ci și după număr. Cel mai adesea, acest lucru este necesar tocmai în lucrul cu foi, atunci când trebuie să sortați totul. Când apelați după număr, numărul nu trebuie să fie inclus între ghilimele

Un număr singular este folosit, de exemplu, când se face referire la o celulă sau o foaie activă, deoarece, evident, o singură celulă sau o singură foaie poate fi activă. De exemplu, să ne „amintim” numărul rândului celulei active

I = ActiveCell.Row

Când vă referiți la un obiect, nu este întotdeauna necesar să specificați calea completă către acesta: dacă nu sunt specificate obiecte de nivel superior, macrocomanda va fi executată în locația activă în prezent.

De exemplu, comanda

Celulele (1,1) .Copie

va copia celula din stânga sus pe foaia activă.

Și echipa

Foi („Sheet1”).Celule (1,1) .Copie

va copia celula din stânga sus pe foaia „Sheet1”, indiferent dacă această foaie este activă sau nu în prezent.

După aceea, puteți deja să scrieți macrocomenzi :)

Dar mai bine citiți mai multe despre bucle și operator condiționat, și apoi despre ce este colecții de obiecteși ce ne pot oferi.

Ce este o macro? Macro Este o secvență stocată de acțiuni sau un program scris în VBA (Visual Basic for Application). O întrebare frecventă este cum să scrieți o macrocomandă în Excel? Doar.

Acestea. dacă trebuie să efectuăm aceleași acțiuni de mai multe ori, ne putem aminti aceste acțiuni și le putem lansa cu un singur buton. Nu vă voi forța să învățați limbajul VBA și nici măcar nu voi sugera multe macrocomenzi standard în acest articol. De fapt, toată lumea poate crea / scrie cu adevărat o macrocomandă în Excel. Pentru aceasta, există cea mai interesantă și neobișnuită caracteristică a Excel - Macro recorder(înregistrând acțiunile dvs. ca cod). Acestea. vă puteți înregistra acțiunile ca pe video și le puteți traduce în cod (secvență).

Pe scurt, dacă efectuați aceleași acțiuni în fiecare zi, merită să vă dați seama cum să automatizați acest proces. Citiți despre cum să scrieți o macrocomandă în Excel?

1. Permite utilizarea macrocomenzilor

Meniu (buton rotund din stânga sus) - Opțiuni Excel - Centru de încredere - Opțiuni centru de încredere - Opțiuni macro. Bifați caseta de lângă Includeți toate macrocomenzile.

Sau faceți același lucru în fila Dezvoltator

2. Activați meniul Dezvoltator pentru a lucra rapid cu macrocomenzi

Meniu (buton rotund din stânga sus) - Opțiuni Excel - General - Afișați fila Dezvoltator.

Pentru ca macrocomanda creată să fie salvată în registrul de lucru, trebuie să salvați fișierul în .xlsm sau .xlsb. Faceți clic pe Salvare ca - registru de lucru cu macrocomandă Excel sau registru de lucru binar.

Deci, cum se scrie o macrocomandă în Excel?

E simplu. Intrăm în Excel. În partea de jos a paginii, sub filele foii, există un buton „Înregistrare macrocomandă”.

Apăsați butonul, se deschide fereastra „Înregistrare macrocomandă”. Numim macrocomandă așa cum ne place în câmpul Nume macro:. Setăm o comandă rapidă de la tastatură cu care o vom apela mai târziu (opțional).

Faceți clic pe OK. Înregistrarea Macro Recorder a început.

Tot. Acum facem acțiunile pe care trebuie să le amintim cu o macrocomandă. De exemplu, să presupunem că trebuie să ștergem un rând și să colorăm A1 în galben.

În timpul acestor manipulări, în loc de butonul „Înregistrare macro” de sub foi, se va aprinde un pătrat, făcând clic pe care veți opri execuția macro-ului.

Cum să începem ce s-a întâmplat? Faceți clic pe butonul, apare fereastra Selectare macrocomandă, selectați macrocomanda dorită, apoi faceți clic pe butonul Executare.

Cum să vezi ce s-a întâmplat? Faceți clic pe butonul. Selectați macrocomanda necesară și faceți clic pe Editare. Se va deschide fereastra Macro Recorder (fereastra VBA).

Codul macro ar trebui să arate ca următorul.

SubExample1 () „Exemplu1 Macro Rows (" 2: 2 "). Selectați Selecția.Ștergeți Shift: = xlUp Range (" A1 "). Selectați cu selecție.Interior .Pattern = xlSolid .PatternColorIndex = xlAutomatic.Color = 65535 .TintAndShade = 0 .PatternTintAndShade = 0 End With End Sub

„Este un personaj de comentariu, de exemplu. această linie nu face parte din cod. O macrocomandă trebuie să aibă un nume (Sub Example1 ()) și un sfârșit (End Sub).

Puteți citi cum să creați un buton pentru o macrocomandă.

Deci, puteți înregistra oricare dintre acțiunile dvs., astfel încât să le puteți repeta de câte ori doriți!

Puteți citi cum să salvați o macrocomandă pentru toate cărțile de pe computer.

Pentru aceasta, fișierul Personal.

Cum să rulați o macrocomandă în mod condiționat poate fi citit

Succes, sunt sigur că o să-ți fie de folos!

Distribuie articolul nostru pe rețelele tale de socializare:

Obiectele precum macrocomenzile din Excel vă vor ajuta să organizați în mod competent procesul de lucru în Excel.

Să luăm în considerare mai detaliat toate caracteristicile de lucru cu aceste obiecte în pachetul de programe MS Office.

Prin utilizarea macrocomenzilor, fiecare celulă din documentul dvs. poate fi automatizată. Acest lucru se datorează faptului că utilizatorul înregistrează toate acțiunile în timpul creării lor.

Ce sunt macrocomenzile și de ce sunt necesare

Puteți lucra cu macrocomenzi în oricare dintre programele pachetului MS Office. În primul rând, acestea sunt necesare pentru a organiza în mod competent munca utilizatorului în program.

Sunt necesare pentru a nu îndeplini același tip de sarcini și acțiuni de câteva zeci de ori.

Crearea și utilizarea lor va ajuta la economisirea semnificativă a timpului și la automatizarea cât mai mult posibil a robotului în program.

Important! Datorită macrocomenzii create, puteți pur și simplu să faceți munca instantaneu, în timp ce o faceți manual ar dura mult timp.

Corpul său, de fapt, este format din instrucțiuni care îi spun programului ce trebuie să facă dacă utilizatorii aleg una sau alta.

Conceptul de macro poate fi întâlnit și în programul Word, dar în Excel are câteva avantaje:

  • În primul rând, combină toate instrucțiunile într-un singur script de execuție complet, care vă permite să optimizați încărcarea programului și să începeți să lucrați mai rapid;
  • Îl puteți apela folosind o tastă din bara de instrumente sau folosind o combinație specială de taste. Acest lucru va permite utilizatorului să nu se desprindă de tastatură în timp ce lucrează;

Crearea propriilor macrocomenzi în Excel 2010, 2007, 2013

Să aruncăm o privire mai atentă la exemplele de creare în Excel 2007, 2013:


  • Deschideți documentul cu care lucrați și pentru care doriți să creați o macrocomandă. Apropo, fiecare celulă pe care se realizează acțiunea trebuie elaborată;
  • Afișați fila dezvoltator în panglică. Pentru a face acest lucru, deschideți elementul de meniu „Fișier” și deschideți parametrii, așa cum se arată în figură;

  • Apoi selectați personalizarea panglicii și adăugați fereastra dezvoltatorului la lista ferestrelor principale, așa cum se arată în figura de mai jos;

  • Acum puteți trece direct la crearea macrocomenzii utilizator. După crearea acesteia, fiecare celulă va fi automatizată - asta înseamnă că orice celulă a documentului utilizatorului va efectua același tip de acțiune pe care îl specifică utilizatorul;
  • Găsiți cheia specială pentru a crea în fila pentru dezvoltatori. Locația sa este prezentată în figura de mai jos;

  • Apăsați tasta . Va apărea o nouă fereastră, în care trebuie să specificați un nume, o comandă rapidă de la tastatură cu care va fi activată. De asemenea, puteți adăuga o scurtă descriere a modului în care funcționează macrocomanda. Acest lucru ar trebui făcut dacă aveți prea multe dintre ele pentru a nu vă încurca;

  • Apoi faceți clic pe „OK”. Fereastra se va închide și procesul de înregistrare va începe. Pentru a opri înregistrarea, apăsați tasta corespunzătoare de pe panoul de control;
  • Acum începeți să efectuați acțiunile care vor fi înregistrate în macro. În acest caz, fiecare celulă poate fi completată cu anumite date.
    De asemenea, puteți lucra cu o singură celulă, după înregistrarea și pornirea macroului, aceeași celulă va fi înregistrată conform algoritmului specificat;
  • Nu uitați să apăsați butonul de oprire a înregistrării datelor. După parcurgerea tuturor pașilor de mai sus, acesta va fi înregistrat și salvat în program.

Cum să activați și să lucrați cu macrocomenzi în Excel

Pentru a face acest lucru, urmați instrucțiunile de mai jos:


  • În fila pentru dezvoltatori, găsiți un buton numit Macro-uri. Apasa pe el;

  • Selectați macrocomanda de care aveți nevoie din listă și faceți clic pe butonul „Run”;
  • De asemenea, puteți rula macrocomanda necesară folosind comanda rapidă de la tastatură care a fost specificată de utilizator în etapa inițială a creării acesteia;
  • După apăsarea butonului de executare, toate acțiunile care au fost efectuate în timpul înregistrării vor fi repetate.

O macrocomandă este cel mai bine utilizată atunci când o anumită celulă trebuie copiată de mai multe ori.

Crearea și ștergerea macrocomenzilor

Macro-urile sunt create folosind un limbaj de programare numit Visual Basic (sau doar abrevierea VB).

În același timp, procesul de creare este atât de automatizat încât chiar și un utilizator care nu a întâlnit niciodată programarea îl poate crea.

Pentru prima dată, tehnologia de creare a macrocomenzilor în programul Excel a fost îmbunătățită și a devenit disponibilă pentru utilizare de către utilizatorii obișnuiți în versiunea 2007.

Cel mai convenabil mod de a le crea este în următoarele versiuni ale Word: 2007, 2010, 2013.

Meniu macro

O macrocomandă este formată din ceea ce se numesc operatori macro. Macrooperatorii sunt ansamblul de acțiuni pe care trebuie să le efectueze în ordinea specificată de utilizator.

Există diferite tipuri de operatori.

Unii pot chiar să efectueze acele acțiuni care sunt asociate cu execuția.

În același timp, aproape nouăzeci la sută din toți operatorii macro prezentați în program îndeplinesc funcțiile butoanelor și pictogramelor obișnuite din bara de instrumente a programului.

Astfel, fiecare celulă își va face treaba.

Cel mai simplu mod de a începe să vă creați propria macrocomandă personalizată este să deschideți reportofonul.

Procesul de creare se rezumă la faptul că utilizatorul trebuie să pornească instrumentul de înregistrare, apoi să repete toți pașii care ar trebui automatizați.

Macro-ul le va traduce în limbajul de programare și va aminti toate comenzile efectuate de utilizator.

Pentru a șterge o macrocomandă, urmați instrucțiunile:


  1. Deschideți fereastra de control folosind tasta „Macro-uri” din fila principală a dezvoltatorului;
  2. Selectați obiectul de care aveți nevoie și faceți clic pe butonul de ștergere din partea dreaptă a ferestrei;

Subiectul 2.3. Software de prezentare și noțiuni de bază pentru programarea de birou

Subiectul 2.4. Sisteme de management al bazelor de date și sisteme expert

2.4.11. Baza de date de formare cu butonul principal formularul „Training_students” - Descărcare

Programare VBA și macrocomenzi

2.3. Software de prezentare și noțiuni de bază pentru programarea de birou

2.3.7. Bazele programării de birou

Visual Basic pentru aplicații: Visual Basic pentru aplicații (VBA)

VBA este un subset al limbajului de programare vizual Visual Basic (VB) care include aproape toate instrumentele pentru crearea de aplicații VB.

VBA diferă de limbajul de programare VB prin faptul că VBA este proiectat să funcționeze direct cu obiecte Office; nu poate crea un proiect independent de aplicațiile Office. Astfel, în VBA, limbajul de programare este VB, iar mediul de programare este implementat ca un editor VB, care poate fi activat din orice aplicație MS Office.

De exemplu, pentru a deschide editorul VBA dintr-o aplicație PowerPoint, trebuie să rulați comanda Instrumente / Macro / Editor VBA. Puteți reveni din editor la aplicație alegând comanda Microsoft PowerPoint din meniul Vizualizare sau apăsând Alt + F11.

Folosind un set de controale și un editor de formulare încorporat în editorul VBA, utilizatorul poate crea o interfață cu utilizatorul pentru proiectul în curs de dezvoltare cu un formular de afișare. Controalele sunt obiecte și un număr de evenimente posibile sunt definite pentru fiecare obiect (de exemplu, clic de mouse sau dublu clic, apăsare de taste, tragerea obiectului etc.).

Fiecare eveniment se manifestă în anumite acțiuni ale programului (răspunsuri, reacții). Un formular personalizat vă permite să creați casete de dialog pentru aplicații. Limbajul de programare VBA este folosit pentru a scrie codul programului, de exemplu, pentru a crea funcții de utilizator în Excel.

Faptul că sistemul de programare VBA este proiectat să funcționeze cu obiecte Office îi permite să fie utilizat eficient pentru a automatiza activitățile asociate cu dezvoltarea diferitelor tipuri de documente.

Luați în considerare algoritmul pentru crearea funcțiilor utilizatorului în VBA:

1. Apelați fereastra editorului de cod VBA executând comanda Service / Macro / Visual Basic Editor sau apăsând Alt + F11.

2. Executați elementul de meniu al editorului Insert / Module (Insert / Module).

3. Apoi, executați Insert / Procedure. În caseta de dialog Adăugare procedură care se deschide, introduceți numele funcției (de exemplu, SUM5) și setați comutatoarele: Type (tip) - în poziția Funcție (funcție); Domeniu - setați la Public și faceți clic pe OK.


Orez. unu.

4. În fereastra editorului pentru programarea VBA va apărea un șablon de funcție: titlul - Funcția Publică SUM5 () și sfârșitul - Funcția de sfârșit, între care trebuie să plasați codul corpului funcției.


Orez. 2.

5. Apoi, introduceți lista parametrilor funcției, de exemplu, în paranteze indicăm (x, y, z, i, j), tipul de date (pentru calcule precise) și tipul de valoare returnată de funcție (vom nu-l introduceți în acest exemplu). În plus, introducem corpul funcției, de exemplu, SUM5 = x + y + z + i + j. Ca rezultat, obținem următorul text de program:

Funcția publică SUM5 (x, y, z, i, j)
SUM5 = x + y + z + i + j
Funcția de sfârșit

6. Reveniți la fereastra aplicației Excel, în care, de exemplu, trebuie să adunăm cinci valori.

7. Executăm „Insert / Function” și în fereastra deschisă a vrăjitorului de funcții selectăm categoria „User-defined”, iar în fereastra „Select function” selectăm SUM5 și dăm clic pe OK.



Orez. 3.



Orez. 4.

Macro-uri

Crearea unei macrocomenzi

Să creăm o macrocomandă pentru a adăuga automat două numere în celulele A1, B1 și să plasăm rezultatul în celula C1 și să umplem celula C1 cu turcoaz.

Algoritm pentru crearea unei macrocomenzi pentru sarcina în cauză:

1. Selectați Instrumente / Macro, Start Recording.

2. În caseta Nume macrocomandă, introduceți un nume pentru macrocomandă. Primul caracter al numelui unei macrocomenzi trebuie să fie o literă. Nu sunt permise spații în numele macrocomenzii; puteți folosi litere de subliniere ca separatoare de cuvinte.

3. Pentru a rula macrocomandă folosind o comandă rapidă de la tastatură, introduceți o literă în caseta Comenzi rapide de la tastatură. Puteți folosi CTRL + litera (pentru litere mici) sau CTRL + SHIFT + litera (pentru litere mari), unde litera este orice tastă de literă de pe tastatură. Nu selectați comanda rapidă de la tastatură implicită, deoarece comanda rapidă de la tastatură selectată înlocuiește comenzile rapide standard de la tastatură Microsoft Excel la momentul acestui registru de lucru.

4. În caseta Salvare, selectați registrul de lucru în care doriți să salvați macrocomanda. Salvați macrocomanda în această carte. Pentru a crea o scurtă descriere a macrocomenzii, introduceți textul necesar în câmpul Descriere. Captura de ecran arată un exemplu de completare a casetei de dialog „Înregistrare macrocomandă”.


Orez. 5.

5. Faceți clic pe OK.

6. Executați macrocomenzile care urmează să fie înregistrate.


Orez. 6.

7. Faceți clic pe butonul Oprire înregistrare din bara de instrumente Floating OS (Oprire înregistrare) sau Instrumente / Macro / Oprire macro.

Când terminați înregistrarea unei macrocomenzi, aceasta apare în lista de macrocomenzi sub propriul nume.

Editorul VBA a înregistrat automat o secvență de macrocomenzi sau un program în funcție de acțiunile efectuate (Fig. 7.).



Orez. 7.

Pentru a apela o macrocomandă, trebuie să executați comanda Service / Macro / Macro. După aceea, în caseta de dialog cu lista de macrocomenzi, o puteți găsi după nume și faceți clic pe butonul Run.

Atribuirea unui buton din bara de instrumente pentru a rula o macrocomandă

O macrocomandă poate fi lansată folosind un buton din bara de instrumente încorporată, pentru aceasta trebuie să rulați:

  1. Selectați elementul Setări din meniul Service.
  2. În caseta de dialog Opțiuni, selectați fila Comenzi și selectați parametrul Macro-uri din lista Categorii, în lista Comenzi, selectați „Buton personalizat”.
  3. Din lista de comenzi, trageți un buton personalizat pe bara de instrumente.
  4. Faceți clic dreapta pe acest buton și alegeți Atribuire macro din meniul contextual.
  5. Introduceți un nume pentru macrocomandă în câmpul Nume macrocomandă.

Atribuirea unei zone de obiect grafic pentru a rula o macrocomandă:

  1. Creați un obiect grafic.
  2. Aplicați meniul contextual obiectului grafic selectat.
  3. Selectați comanda Atribuire macro din meniul contextual.
  4. În caseta de dialog „Atribuiți macrocomenzi la obiect” care apare, introduceți numele macrocomenzii în câmpul Nume macrocomandă, apoi faceți clic pe OK.

Editarea macro-urilor este efectuată de editorul VBA, pentru aceasta trebuie să faceți următoarele:

  1. Selectați comanda Service / Macro / Macros.
  2. Selectați numele macrocomenzii care trebuie schimbată din lista Nume.
  3. Apăsând butonul Modificare se va deschide fereastra Visual Basic, în care puteți edita comenzile macrocomenzii selectate scrise în limbajul Visual Basic.


Eliminarea unei macrocomenzi:

  1. În meniul Instrumente, selectați Macro, apoi comanda Macro-uri.
  2. În lista de macrocomenzi din registrul de lucru curent, selectați macrocomandă pe care doriți să o ștergeți și faceți clic pe butonul Ștergere.

Redenumirea unei macrocomenzi

Pentru a redenumi o macrocomandă, trebuie să intrați în modul de editare macro și să schimbați titlul în textul programului. Noul nume îl va înlocui automat pe cel vechi în listele de macrocomandă, iar o macrocomandă cu un nume nou va fi apelată folosind tastele de comenzi rapide.

Top articole similare