VBA și macrocomenzi. Exemple de macrocomandă Excel

30.08.2019 Photoshop

Macro-urile programului Microsoft Excel vă permit să accelerați semnificativ lucrul cu documente în acest sens editor de foi de calcul. Acest lucru se realizează prin automatizarea acțiunilor repetitive înregistrate în cod special. Să vedem cum să creați macrocomenzi în programul Excel, și cum pot fi editate.

O macrocomandă poate fi înregistrată în două moduri:

  • automat;
  • manual.

Folosind prima opțiune, pur și simplu înregistrați anumite acțiuni în programul Microsoft Excel în care rulați în acest moment timp. Apoi, puteți reda această înregistrare. Această metodă foarte ușor și nu necesită cunoștințe de cod, dar utilizarea sa în practică este destul de limitată.

Înregistrarea manuală a macrocomenzilor, dimpotrivă, necesită cunoștințe de programare, deoarece codul este tastat manual de la tastatură. Dar codul scris corect în acest fel poate accelera semnificativ execuția proceselor.

Înregistrare macro automată

Înainte de a începe înregistrarea automată a macrocomenzilor, aveți nevoie.

Se deschide fereastra de setări de înregistrare macro. Aici puteți specifica orice nume de macrocomandă dacă cel implicit nu vi se potrivește. Principalul lucru este că numele începe cu o literă și nu cu un număr. De asemenea, titlul nu trebuie să conțină spații. Am lăsat numele implicit – „Macro1”.

Aici, dacă doriți, puteți seta o combinație de taste care, atunci când este apăsată, va lansa macro-ul. Prima cheie trebuie să fie Tasta Ctrl, iar utilizatorul setează a doua cheie independent. De exemplu, am setat tasta M ca exemplu.

Apoi, trebuie să determinați unde va fi stocată macrocomanda. În mod implicit, va fi stocat în același registru de lucru (fișier), dar dacă doriți, puteți seta stocarea într-un registru de lucru nou sau într-un registru de lucru macro separat. Vom lăsa valoarea implicită.

În câmpul cu setările de macrocomandă cel mai mic, puteți lăsa orice descriere a macrocomenzii care este potrivită pentru context. Dar, acest lucru nu este necesar.

Când toate setările sunt finalizate, faceți clic pe butonul „OK”.

După aceasta, toate acțiunile dvs. din acest registru de lucru Excel (fișier) vor fi înregistrate într-o macrocomandă până când opriți înregistrarea.

De exemplu, să notăm cea mai simplă operație aritmetică: adăugarea conținutului a trei celule (=C4+C5+C6).

După aceea, faceți clic pe butonul „Opriți înregistrarea”. Acest buton a fost convertit din butonul „Înregistrare macrocomandă” după ce înregistrarea a fost activată.

Rularea unei macrocomenzi

Pentru a verifica cum funcționează macrocomanda înregistrată, faceți clic în același bloc de instrumente „Cod” pe butonul „Macrocomenzi” sau apăsați combinația de taste Alt+F8.

După aceasta, se deschide o fereastră cu o listă de macrocomenzi înregistrate. Căutăm macrocomanda pe care am înregistrat-o, o selectăm și facem clic pe butonul „Run”.

O poți face și mai simplu și nici măcar să nu apelezi fereastra de selecție macro. Ne amintim că am notat o combinație de „taste rapide” pentru a apela rapid o macrocomandă. În cazul nostru, acesta este Ctrl+M. Tastam această combinație pe tastatură, după care rulează macro-ul.

După cum puteți vedea, macro-ul a efectuat exact toate acțiunile care au fost înregistrate mai devreme.

Editarea unei macrocomenzi

Pentru a edita macrocomandă, faceți clic din nou pe butonul „Macrocomenzi”. În fereastra care se deschide, selectați macrocomanda dorită și faceți clic pe butonul „Editați”.

Microsoft se deschide Visual Basic(VBE) este mediul în care are loc editarea macro.

Fiecare înregistrare macro începe cu comanda Sub și se termină cu comanda End Sub. Imediat după comanda Sub este numele macrocomenzii. Instrucțiunea „Range(“…”). Select specifică selecția celulei. De exemplu, comanda „Range(“C4”). Select selectează celula C4. Operatorul „ActiveCell.FormulaR1C1” este folosit pentru a înregistra acțiuni în formule și pentru alte calcule.

Să încercăm să schimbăm puțin macro-ul. Pentru a face acest lucru, adăugați următoarea expresie la macrocomandă:

Interval("C3").Selectați
ActiveCell.FormulaR1C1 = „11”

Expresia „ActiveCell.FormulaR1C1 = „=R[-3]C+R[-2]C+R[-1]C”” va fi înlocuită cu „ActiveCell.FormulaR1C1 = „= R[-4]C+R [-3]C+R[-2]C+R[-1]C"".

Închideți editorul și rulați macrocomandă, ca în ultima dată. După cum puteți vedea, datorită modificărilor introduse, a fost adăugată o altă celulă cu date. A fost inclus și în calculul sumei totale.

Dacă macro-ul este prea mare, finalizarea poate dura mult timp. Dar făcând o modificare manuală a codului, putem accelera procesul. Adăugați comanda „Application.ScreenUpdating = False”. Va economisi putere de calcul și, prin urmare, va accelera munca. Acest lucru se realizează prin neîmprospătarea ecranului în timp ce acțiunile de calcul sunt în desfășurare. Pentru a relua actualizarea după executarea macro-ului, la sfârșitul acesteia scriem comanda „Application.ScreenUpdating = True”

Să adăugăm, de asemenea, comanda „Application.Calculation = xlCalculationManual” la începutul codului și să adăugăm „Application.Calculation = xlCalculationAutomatic” la sfârșitul codului. Făcând acest lucru, la începutul macro-ului dezactivăm recalcularea automată a rezultatului după fiecare schimbare de celulă, iar la sfârșitul macro-ului o activăm. În acest fel, Excel va calcula rezultatul o singură dată, în loc să-l recalculeze constant, ceea ce va economisi timp.

Scrierea codului macro de la zero

Utilizatorii avansați nu pot doar să editeze și să optimizeze macrocomenzile înregistrate, ci și să scrie codul macro de la zero. Pentru a începe, trebuie să faceți clic pe butonul „Visual Basic”, care se află chiar la începutul panglicii dezvoltatorului.

După aceasta, se deschide fereastra familiară a editorului VBE.

Programatorul scrie manual codul macro acolo.

După cum puteți vedea, macrocomenzile din Microsoft Excel pot accelera semnificativ execuția proceselor de rutină și monotone. Dar, în cele mai multe cazuri, macrocomenzile codificate manual sunt mai potrivite pentru aceasta decât acțiunile înregistrate automat. În plus, codul macro poate fi optimizat prin editorul VBE pentru a accelera procesul de execuție a sarcinilor.

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

Să aruncăm o privire mai atentă la toate caracteristicile de lucru cu aceste obiecte din pachetul software MS Office.

Datorită utilizării macrocomenzilor, fiecare celulă a documentului dumneavoastră poate fi automatizată. Acest lucru se întâmplă din cauza faptului că utilizatorul înregistrează toate acțiunile în timp ce le creează.

Ce sunt macrocomenzile și de ce sunt necesare?

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

Sunt necesare pentru a nu efectua 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 maximizarea automatizării robotului în program.

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

Corpul său este alcătuit în esență din instrucțiuni care îi spun programului ce trebuie să facă dacă utilizatorii aleg una sau alta.

Puteți întâlni și conceptul de macrocomandă în 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 ridice privirea de la tastatură în timp ce lucrează;

Mai notăm două articole care potvei avea nevoie de:

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 efectuează o acțiune trebuie să fie elaborată;
  • Afișați fila dezvoltator în panglică. Pentru a face acest lucru, deschideți elementul de meniu „Fișier” și deschideți opțiunile așa cum se arată în figură;

  • Apoi selectați setarea panglică și adăugați fereastra dezvoltatorului la lista ferestrelor principale, așa cum se arată în imaginea 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 în fila pentru dezvoltatori cheie specială a crea. Locația sa este prezentată în figura de mai jos;

  • Apăsați tasta . Va apărea o fereastră de creare în care trebuie să specificați un nume și o combinație de taste cu care va fi activată. De asemenea, puteți adăuga o scurtă descriere a modului în care funcționează macrocomanda.
    Acest lucru trebuie 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. Fiecare celulă poate fi completată cu anumite date.
    De asemenea, puteți lucra cu o singură celulă după înregistrarea și activarea macro-ului, 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. Faceți clic 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ă utilizând comanda rapidă de la tastatură care a fost specificată de utilizator la etapa inițială a creării acesteia;
  • După ce faceți clic pe butonul de executare, toate acțiunile care au fost efectuate în timpul înregistrării vor fi efectuate din nou.

Macro-ul este cel mai convenabil de utilizat atunci când o anumită celulă trebuie copiată de mai multe ori.

Am început să creez acest site ca caietul conform convenabilului Capabilitati Excel. În orice moment, vă puteți reîmprospăta cunoștințele despre una sau alta caracteristică a programului accesând site-ul web, plus puteți trimite un link către articol prietenilor sau colegilor care solicită ajutor cu Excel. Destul de repede, audiența site-ului a crescut și, după cum văd, informațiile înregistrate sunt utile nu numai mie și altor câteva persoane, ci și multor persoane necunoscute pentru mine și sunt foarte apreciate de motoarele de căutare. Dacă sunt încrezător în mine în ceea ce privește capabilitățile Excel, atunci sunt un foarte specialist nivel înalt Nu mă pot numi expert VBA. Prin urmare, aș dori să creez un articol mare de asistent, în care voi înregistra macrocomenzi utile pe care le folosesc des. Sunt sigur că această colecție de caracteristici VBA va fi utilă nu numai pentru mine.

Site-ul are deja mai multe articole despre VBA, inclusiv, dar cred că va fi util să păstrați gadget-urile de cod care sunt adesea folosite într-un singur loc.

Opriți afișarea acțiunilor macro pe ecran cu o funcție simplă. Acest lucru nu numai că va îmbunătăți vizual execuția, dar va accelera semnificativ execuția macro.

Sub Makros1() Application.ScreenUpdating = 0 "Codul dvs. Application.ScreenUpdating = 1 End Sub

Nu uitați să includeți funcția la sfârșitul macro-ului

Cum pot elimina selecția de copiere după rularea unei macrocomenzi?

Dacă aveți toate acestea în macrocomandă, selectați un interval pentru copiere și lipire. Nu uitați să dezactivați selecția la sfârșitul macrocomenzii

Sub Makros1() „Codul dumneavoastră Application.CutCopyMode = 0 End Sub

Macro-uri utile. Cum să găsiți ultimul rând sau coloană dintr-un interval

Această construcție vă va ajuta să găsiți cu ușurință numărul ultimului rând sau coloană din intervalul completat. Este deosebit de convenabil de utilizat în cicluri, nu trebuie să specificați 1000 de linii ale ciclului cu o marjă, Excel însuși va găsi unde se află sfârșitul intervalului folosind această construcție:

Sub makros1() Dim mLastRow As Long Dim nLastCol As Long mLastRow = Cells(Rows.Count, 1).End(xlUp).Row "Găsește ultimul număr de rând din intervalul umplut nLastCol= Cells(1, Columns.Count). End(xlToLeft ).Column „Găsește numărul ultimei coloane populate din intervalul End Sub

Mai mult, declar imediat variabila ca Long (lungime 2.147.483.647) pentru a nu ajunge într-o situație în care popularul Integer ar putea să nu fie suficient (32.767) pentru mese mari.

De asemenea, ar trebui să acordați atenție că căutarea are loc în prima coloană sau primul rând, selectați numărul dorit, pentru determinarea corectă.

Pentru buclă și verificarea condițiilor în buclă

Dacă ai găsit ultimele numere rânduri și coloane, le puteți utiliza în bucle. De exemplu, trebuie să parcurgeți prima coloană și să numărați numărul de celule goale.

Sub makros1() Application.ScreenUpdating = 0 Dim mLastRow As Long Dim Kol As Long "Count Variable Dim i As Long "Loop Variable mLastRow = Cells(Rows.Count, 1).End(xlUp).Row Kol = 0 For i = 1 La mLastRow If Cells(i, 1).Value = "" Apoi Kol = Kol + 1 End If Next i MsgBox Kol Application.ScreenUpdating = 1 End Sub

Msgbox este folosit și aici folosind această funcție, puteți afișa datele într-o fereastră separată. Pentru exemplul meu, va arăta astfel:

Calcularea timpului de execuție macro

Sub makros1() TimeStart = Now TimeFinish = Now MsgBox "Time: " & Format(TimeFinish - TimeStart, "h:mm:ss") End Sub

MsgBox produce următorul rezultat:

Este foarte convenabil să urmăriți timpul de execuție al macrocomenzilor pentru optimizarea ulterioară.

Acestea sunt macrocomenzi utile pe care le folosesc foarte des. Voi extinde treptat această listă. Automatizare eficientă pentru toată lumea!

Distribuie articolul nostru pe rețelele tale de socializare:

Manualul conține macrocomenzi pe următoarele subiecte:
Rularea unei macrocomenzi pentru a căuta o celulă.
Rulați o macrocomandă când deschideți un registru de lucru.
Rulează o macrocomandă când introduceți „2” în celulă.
Rulați o macrocomandă când apăsați Enter.
Adăugați propria filă „Suplimente” (Format celulă) la panou.
Lucrul cu fișiere (adică schimbul de date cu TXT, RTF, XLS etc.).
Verificarea prezenței unui fișier la calea specificată.
Căutați fișierul necesar.
Automatizarea ștergerii fișierelor.
Text liber în bara de stare.
Restabilirea barei de stare.
Linie târâtoare în bara de stare.

Schimbați rapid titlul ferestrei.
Schimbarea titlului ferestrei (ascunderea numelui fișierului).
Reveniți la titlul original.
Ce este deschis în acest moment.
Lucrul cu fișiere text.
Scrie și citește fișier text.
Procesarea mai multor fișiere text.
Determinarea sfârșitului unei linii într-un fișier text.
Copierea dintr-un fișier text în Excel.

Copiați conținutul într-un fișier text.
Exportați datele în txt.
Exportați datele în html.
Importați date care necesită mai mult de 256 de coloane.
Creare copii de rezervă dosare valoroase.
Numărarea de câte ori a fost deschis un fișier.
Ieșiți calea fișierului către celula activă.
Copierea conținutului Fișier RTFîn Excel.
Copierea datelor dintr-un registru de lucru închis.
Extragerea datelor dintr-un fișier închis.
Căutați un cuvânt în fișiere.
Creați un fișier text și introduceți text în fișier.
Creați un fișier text și introduceți text (sfârșitul detectării fișierului).
Creare Documente Word bazat pe tabele Excel.
Comenzi pentru crearea și ștergerea directoarelor.
Obțineți directorul curent.
Schimbați directorul.

Vizualizați toate fișierele dintr-un director.
Vizualizați toate fișierele dintr-un director.
Lucru zona Microsoft Excela.
Caiet de lucru.
Numărul de nume registrul de lucru.
Protecția caietului de lucru.
Interzicerea tipăririi cărților.
Deschiderea unei cărți (sau fișiere text).
Deschideți cartea și adăugați text în celula A1.
Câte cărți sunt deschise?
Închiderea tuturor cărților.
Închiderea unui registru de lucru numai atunci când este îndeplinită o condiție.
Salvează registrul de lucru cu un nume care reprezintă data curentă.
Este salvat registrul de lucru?
Creați un registru de lucru cu o singură foaie.
Creați o carte.
Eliminarea numelor inutile.
Reproducerea rapidă a unui registru de lucru.
Sortarea foilor.
Găsirea valorii maxime pe toate foile registrului de lucru.
Fișă de lucru.
Verificarea dacă foaia de lucru este protejată.
Lista de foi sortate.
Creați o foaie nouă.
Creați o foaie nouă.
Îndepărtarea foilor în funcție de dată.
Copierea unei foi într-o carte.
Copierea unei foi în carte noua(creat).
Mutarea unei foi într-o carte.
Mutați mai multe foi într-un nou registru de lucru.
Înlocuiți un fișier existent.
„Întoarcerea” cărții.
Introduceți un antet și un subsol cu ​​numele registrului de lucru, foaia și data curentă.
Foaia există?
Foaia există?
Afișează numărul de foi din registrul de lucru activ.
Afișează numărul de foi din registrul de lucru activ sub formă de hyperlinkuri.
Afișează numele foilor active unul câte unul.
Afișează numele și numerele foilor cărții curente.
Faceți foaia invizibilă.
Câte pagini sunt pe toate foile?
Celulă și interval (coloane și rânduri).
Copiați rândurile pe altă foaie.
Copiați coloanele pe altă foaie.
Numărează numărul de celule care conțin valorile specificate.
Numărează numărul de celule dintr-un interval care conține valorile specificate.
Numărează numărul de celule vizibile dintr-un interval.
Determinarea numărului de celule dintr-un interval și a sumei valorilor acestora.
Numărarea numărului de celule.
Recalcularea automată a datelor din tabel atunci când valorile acestuia se schimbă.
Introducerea datelor în celule.
Introducerea datelor folosind formule.
Intrare de date seriale.
Introducerea datelor text în celule.
Afișează numele cărții, foaia și numărul de foi din celule.
Eliminarea liniilor goale.
Eliminarea liniilor goale.
Eliminarea liniilor goale.
Ștergerea unui rând după condiție.
Îndepărtarea rânduri ascunse.
Eliminați rândurile ascunse utilizate sau cu înălțimea zero.
Eliminarea duplicatelor folosind o mască.

Selectează un interval deasupra celulei curente.
Selectați o celulă și plasați un număr acolo.
Evidențierea valorilor negative.
Selectarea unui interval și utilizarea adreselor absolute.

Selectarea celulelor la intervale.
Selectarea mai multor intervale.
Mișcarea prin celule.
Găsiți-vă cel mai apropiat celulă goală coloană.
Găsirea valorii maxime.
Căutați și înlocuiți după model.
Căutați o valoare și afișați rezultatul într-o fereastră separată.

Căutați cu evidențierea datelor găsite.
Căutați după condiție într-un interval.
Găsește ultima celulă negoală dintr-un interval.
Găsește ultima celulă care nu este goală dintr-o coloană.
Găsește ultima celulă care nu este goală dintr-un rând.
Căutare de celule albastru in raza de actiune.
Găsirea unei valori negative într-un interval și evidențierea acesteia în albastru.
Găsirea prezenței unei valori într-o coloană.
Găsirea potrivirilor într-un interval.
Căutați o celulă dintr-un interval.
Căutați o celulă dintr-un interval.
Găsirea unei valori aproximative într-un interval.
Găsește începutul și sfârșitul unui interval care conține date.
Găsirea începutului datelor.
Înlocuirea automată a valorilor.
Umplerea rapidă a unui interval (matrice).
Umplerea prin interval (matrice).
Completează intervalul specificat (matrice).
Umpleți intervalul (matrice).
Calculul sumei primelor valori ale intervalului.
Plasarea într-o celulă a unui ceas electronic.
"Alarma".
Proiectarea limitelor superioare și inferioare ale gamei.
Adresa celulei active.
Coordonatele celulei active.
Formula celulară activă.
Obținerea unei formule dintr-o celulă.
Tipul de date al celulei.
Ieșiți adresa de la sfârșitul intervalului.
Obținerea de informații despre intervalul selectat.
Luați cuvântul cu al 13-lea caracter din celulă.
Crearea unei liste editabile (tabel).
Verificați valoarea goală.
Intersecția celulelor.
Înmulțirea intervalului selectat cu.
Înmulțiți simultan toate datele dintr-un interval.
Împărțiți gama în.
Punerea la pătrat a fiecărei celule din interval.
Rezumă datele numai din celulele vizibile.
Suma celulelor cu valori numerice.
La însumare, cursorul se află în interiorul intervalului.

Dobânzi acumulate în funcție de sumă.
Dobânzi acumulate în funcție de sumă.
Exemplu rezumat de calcul al comisionului.
Mișcarea de-a lungul intervalului.
Offset față de celula selectată.
Iterați prin celule în jos pe coloană.
Crearea unui interval de umplere.
Selectarea unui parametru de celulă.
Divizarea intervalului.
Îmbinați datele intervalului.
Îmbinați datele intervalului.
Aflați coloana sau rândul maxim.
Prescripţie valori posibile gamă.
Testarea vitezei intervalelor de citire și scriere.
Deschideți MsgBox când este selectată o celulă.
Ascunzând un rând.
Ascunderea mai multor rânduri.
Ascunderea unei coloane.
Ascunderea mai multor coloane.
Ascunderea unui rând după numele celulei.
Ascunderea mai multor rânduri după adresele celulelor.
Ascunderea unei coloane după numele celulei.
Ascunderea mai multor coloane după adresele celulelor.
Celula intermitent.
Lucrul cu note.
Afișează toate notele din foaia de lucru.
Funcția de extragere a comentariilor.
Lista de note pentru foile protejate.

Lista de note într-o listă separată.
Lista de note într-o listă separată.

Numărarea numărului de comentarii.
Numărarea notelor.
Selectați celulele cu comentarii.
Afișează toate notele.
Schimbați culoarea notelor.
Adăugarea de note.
Adăugarea de note la un interval în funcție de condiție.
Mutați un comentariu într-o celulă și înapoi.

Transferarea valorilor dintr-o celulă într-un comentariu.
File personalizate pe panglică.
Adăugarea barei de instrumente.
Adăugarea unui buton la bara de instrumente.
Panoul cu un singur buton.
Panou cu două butoane.
Crearea unui panou în dreapta.

Crearea unui meniu personalizat (opțiunea 1).
Crearea unui meniu personalizat (opțiunea 2).
Crearea unui meniu personalizat (opțiunea 3).
Crearea unui meniu personalizat (opțiunea 4).
Crearea unui meniu personalizat (opțiunea 5).
Crearea unui meniu personalizat (opțiunea 6).
Crearea unei liste de elemente din meniul principal Excel.
Crearea unei liste de elemente din meniul contextual.
Afișați bara de instrumente într-o anumită condiție.
Ascunderea și afișarea barelor de instrumente.
Creați un sfat pentru butoanele mele.
Creați un meniu bazat pe datele din foaia de lucru.
Creare meniul contextual.
Blocarea meniului contextual.
Adăugarea unei comenzi în meniul Instrumente.
Adăugarea unei comenzi în meniul Vizualizare.
Crearea unui panou de listă.
Un desen animat cu un asistent.
Adăugați text, titlu, buton și pictogramă la asistent.
Noi opțiuni de asistent.
Utilizarea asistentului pentru a selecta o culoare de umplere.
DIALOG WINDOWS.
Funcția INPUTBOX (prin introducerea valorii).
Previzualizare apel.
Configurarea introducerii datelor în caseta de dialog.

Deschide caseta de dialog (Deschide fișier).
Deschide caseta de dialog (Imprimare).
Alte casete de dialog.
Apelarea browserului din Excel.
Caseta de dialog pentru introducerea datelor.
Caseta de dialog pentru setările fontului.
Valori implicite.
Formatarea textului. Mesele. BORNIERE ȘI UMPLEARE.
Afișează o listă de fonturi disponibile.
Selectarea tuturor numerelor din text.
Scrieți cu majuscule doar la începutul textului.
Numărarea numărului de repetări ale textului de căutare.
Selectarea unui element arbitrar din text.
Afișează textul înapoi.
Textul în limba engleză este cu majuscule.
Lansarea unui tabel de simboluri din Excel.
informații despre utilizator, computer, imprimantă etc.
Obțineți numele de utilizator.
Ieșire de rezoluție a monitorului.
Obțineți informații despre imprimanta pe care o utilizați.
Vizualizați informații despre unitățile computerului dvs.
FORME DE UTILIZATOR.
DIAGRAME.
Construirea unei diagrame folosind o macrocomandă.
Salvarea diagramei într-un fișier separat.
Creați și ștergeți o diagramă cu un clic pe un buton.
Afișați o listă de diagrame într-o fereastră separată.
Aplicarea unei palete de culori aleatorii.
Efectul de transparență a graficului.
Construiți o diagramă pe baza datelor din mai multe foi de lucru.
Creați legende pentru datele diagramei.
DIFERITE PROGRAME.
Program pentru compunerea cuvintelor încrucișate.
Creați o copertă pentru DVD.
Jocul „Câmp minat”.
Jocul „Ghicește animalul”.
Calcul bazat pe celule de o anumită culoare.
ALTE FUNCȚII ȘI MACRO.
Apelarea tastelor funcționale.
Calculul mediei aritmetice.
Transformarea numerelor în „bani”.
Căutați cea mai apropiată zi de luni.
Numărarea numărului de ani întregi.
Calculul mediei ponderate.
Convertirea numărului lunii în numele său.
Folosind link-uri relative.
Conversia unui tabel Excel în format HTML.
Generator de numere aleatorii.
Numere aleatorii - bazate pe interval.
Aplicarea unei funcții fără a o introduce într-o celulă.
Numărarea obiectelor numite.
Activarea unui filtru automat folosind o macrocomandă.
Crearea unei linii târâtoare.
Crearea unei imagini care rulează.
Autoforme rotative.
Apelarea tabelului de culori.
Crearea unui calculator.
Declinarea numelui, prenumelui și patronimului.
DATA SI ORA.
Data și ora de ieșire.
Data și ora de ieșire.
Obținerea datei sistemului.
Se preia data și orele.
Funcția DateFull Versiunea de MS Office utilizată nu este specificată.

Excel are o capacitate puternică, dar rar folosită, de a crea secvențe automate de acțiuni folosind macrocomenzi. O macrocomandă este o soluție ideală dacă aveți de-a face cu același tip de sarcină care se repetă de mai multe ori. De exemplu, prelucrarea datelor sau formatarea documentelor folosind un șablon standardizat. În același timp, nu aveți nevoie de cunoștințe de limbaje de programare.

Ești deja curios ce este o macro și cum funcționează? Apoi mergeți mai departe cu îndrăzneală - apoi vom parcurge întregul proces de creare a unui macro pas cu pas împreună cu dvs.

Ce este o macro?

Macro in Microsoft Office(da, această funcționalitate funcționează la fel în multe aplicații Pachetul Microsoft Birou) este codul programuluiîntr-un limbaj de programare (VBA), salvat în document. Pentru a fi mai clar, un document Microsoft Office poate fi comparat cu Pagina HTML, atunci o macrocomandă este un analog cu Javascript. Ce poate face Javascript cu datele HTML dintr-o pagină web este foarte asemănător cu ceea ce poate face o macrocomandă cu datele din document Microsoft Birou.

Macro-urile pot efectua aproape orice acțiune pe care o doriți într-un document. Iată câteva dintre ele (o parte foarte mică):

  • Aplicați stiluri și formatare.
  • Efectuați diverse operații cu date numerice și text.
  • Utilizare surse externe date (fișiere baze de date, documente text etc.)
  • Creați un document nou.
  • Efectuați toți pașii de mai sus în orice combinație.

Crearea unei macrocomenzi - Exemplu practic

De exemplu, să luăm cel mai mult dosar obișnuit CSV. Acest masă simplă 10x20, umplut cu numere de la 0 la 100 cu titluri pentru coloane și rânduri. Sarcina noastră este să transformăm acest set de date într-un tabel formatat prezentabil și să generăm totaluri pe fiecare rând.

După cum sa menționat deja, o macrocomandă este un cod scris în limbajul de programare VBA. Dar în Excel puteți crea un program fără a scrie o linie de cod, ceea ce vom face chiar acum.

Pentru a crea o macrocomandă, deschideți Vedere(Vizualizare) > Macro-uri(Macro-uri) > Înregistrare macro(Înregistrați o macrocomandă...)

Dați macrocomenzii un nume (fără spații) și faceți clic Bine.

Din acest moment, TOATE acțiunile tale cu documentul sunt înregistrate: modificări de celulă, derularea tabelului, chiar schimbarea dimensiunii ferestrei.

Excel semnalează că modul de înregistrare macro este activat în două locuri. În primul rând, în meniu Macro-uri(Macro) – în loc de o linie Înregistrare macro(Înregistrare macro...) a apărut linia Opriți înregistrarea(Opriți înregistrarea).

În al doilea rând, în colțul din stânga jos al ferestrei Excel. Pictogramă Stop(pătrat mic) indică faptul că modul de înregistrare macro este activat. Făcând clic pe el, înregistrarea va fi oprită. În schimb, când modul de înregistrare nu este activat, există o pictogramă în acest loc pentru a activa înregistrarea macro. Făcând clic pe el, se va da același rezultat ca și activarea înregistrării prin meniu.

Acum că modul de înregistrare macro este activat, să trecem la sarcina noastră. Mai întâi de toate, să adăugăm anteturi pentru datele rezumate.

  • =SUMA(B2:K2) sau =SUMA(B2:K2)
  • =MEDIE(B2:K2) sau =MEDIE(B2:K2)
  • =MIN(B2:K2) sau =MIN(B2:K2)
  • =MAX(B2:K2) sau =MAX(B2:K2)
  • =MEDIANĂ(B2:K2) sau =MEDIANĂ(B2:K2)

Acum selectați celulele cu formule și copiați-le pe toate rândurile tabelului nostru trăgând mânerul de completare automată.

Odată ce această acțiune este finalizată, totalurile corespunzătoare ar trebui să apară în fiecare rând.

Respectiv:

  • =SUMA(L2:L21) sau =SUMA(L2:L21)
  • =MEDIE(B2:K21) sau =MEDIE(B2:K21)– pentru a calcula această valoare, este necesar să luăm exact datele originale din tabel. Dacă luăm valoarea medie din medie linii separate, atunci rezultatul va fi diferit.
  • =MIN(N2:N21) sau =MIN(N2:N21)
  • =MAX(O2:O21) sau =MAX(O2:O21)
  • =MEDIANĂ(B2:K21) sau =MEDIANĂ(B2:K21)– calculăm folosind datele inițiale din tabel pentru motivul menționat mai sus.

Acum că am terminat cu calculele, să trecem la formatare. Mai întâi, să setăm același format de afișare a datelor pentru toate celulele. Selectați toate celulele de pe foaie folosind comanda rapidă de la tastatură Ctrl+A, sau faceți clic pe pictogramă Selectați toate, care se află la intersecția titlurilor rândurilor și coloanelor. Apoi faceți clic Stil virgulă(Format delimitat). Acasă(Acasă).

  • Stilul de font aldine.
  • Alinierea la centru.
  • Umplere cu culoare.

Și, în sfârșit, să setăm formatul valorilor totale.

Iată cum ar trebui să arate în final:

Dacă sunteți mulțumit de toate, opriți înregistrarea macro-ului.

Felicitări! Tocmai ați înregistrat singur prima macrocomandă Excel.

Pentru a utiliza macrocomanda creată, trebuie să salvăm document Excelîntr-un format care acceptă macrocomenzi. În primul rând, trebuie să ștergem toate datele din tabelul pe care l-am creat, adică. fă-l un șablon gol. Faptul este că în viitor, lucrând cu acest șablon, vom importa cele mai recente și mai relevante date în el.

Pentru a șterge toate celulele de date, faceți clic clic dreapta mouse-ul după pictogramă Selectați toate, care se află la intersecția titlurilor rândurilor și coloanelor, iar din meniul contextual selectați elementul Şterge(Şterge).

Acum foaia noastră este complet șters de toate datele, în timp ce macro-ul rămâne înregistrat. Trebuie să salvăm cartea ca Șablon Excel macro-activat, care are extensia XLTM.

Punct important! Dacă salvați fișierul cu extensia XLTX, atunci macro-ul nu va funcționa în ea. Apropo, puteți salva registrul de lucru ca șablon Excel 97-2003, care are formatul XLT, acceptă și macrocomenzi.

Odată ce șablonul este salvat, puteți închide Excel în siguranță.

Rularea unei macrocomenzi în Excel

Înainte de a dezvălui toate posibilitățile macro-ului pe care l-ați creat, cred că este corect să acordați atenție unui cuplu puncte importante referitor la macro-uri în general:

  • Macro-urile pot fi dăunătoare.
  • Citiți din nou paragraful anterior.

Codul VBA este foarte mari oportunități. În special, poate efectua operații asupra fișierelor din afara documentului curent. De exemplu, o macrocomandă poate șterge sau modifica orice fișier dintr-un folder Documentele mele. Din acest motiv, rulați și permiteți numai macrocomenzi din surse în care aveți încredere.

Pentru a rula macrocomanda noastră de formatare a datelor, deschideți fișierul șablon pe care l-am creat în prima parte a acestui tutorial. Dacă ai setări standard securitate, apoi atunci când deschideți un fișier, va apărea un avertisment în partea de sus a tabelului care afirmă că rularea macrocomenzilor este dezactivată și un buton pentru a activa execuția lor. Din moment ce noi am făcut șablonul și avem încredere în noi, apăsăm butonul Activați conținut(Includeți conținut).

Următorul pas este să importați cel mai recent set de date actualizat din fișier CSV(am creat macro-ul nostru pe baza unui astfel de fișier).

Când importați date dintr-un fișier CSV, Excel vă poate solicita să configurați unele setări transmisie corectă date într-un tabel.

Când importul este complet, accesați meniul Macro-uri fila (Macrocomenzi). Vedere(Vizualizare) și selectați comanda Vizualizați macrocomenzi(Macro-uri).

În caseta de dialog care se deschide, vom vedea o linie cu numele macrocomenzii noastre FormatData. Selectați-l și faceți clic Fugi(Alergă).

Când macro-ul începe să ruleze, veți vedea cursorul tabelului sărind de la o celulă la alta. După câteva secunde, se vor efectua aceleași operații cu datele ca la înregistrarea macro-ului. Când totul este gata, tabelul ar trebui să arate la fel ca originalul pe care l-am formatat manual, doar cu date diferite în celule.

Să ne uităm sub capotă: Cum funcționează o macro?

După cum sa menționat de mai multe ori, o macrocomandă este un cod de program într-un limbaj de programare Visual Basic pentru aplicații(VBA). Când activați modul de înregistrare macro, Excel înregistrează de fapt fiecare acțiune pe care o faceți ca instrucțiuni în VBA. Mai simplu spus, Excel scrie codul pentru tine.

Pentru a vedea acest cod de program, trebuie să mergeți la meniu Macro-uri fila (Macrocomenzi). Vedere(Vizualizare) faceți clic Vizualizați macrocomenzi(Macro) și în caseta de dialog care se deschide, faceți clic Edita(Schimba).

Se va deschide o fereastră Visual Basic pentru aplicații, în care vom vedea codul de program al macrocomenzii pe care am înregistrat-o. Da, ați înțeles bine, aici puteți schimba acest cod și chiar puteți crea o nouă macrocomandă. Acțiunile pe care le-am efectuat cu tabelul din această lecție pot fi notate folosind înregistrare automată macro în Excel. Dar macrocomenzile mai complexe, cu o secvență și o logică a acțiunilor bine reglate, necesită programare manuală.

Să mai adăugăm un pas sarcinii noastre...

Imaginați-vă că fișierul nostru de date original date.csv este creat automat de un proces și este întotdeauna salvat pe disc în același loc. De exemplu, C:\Data\data.csv– calea către fișierul cu datele actualizate. Procesul de deschidere a acestui fișier și import de date din acesta poate fi, de asemenea, înregistrat într-o macrocomandă:

  1. Deschideți fișierul șablon în care am salvat macro-ul - FormatData.
  2. Creați o nouă macrocomandă numită LoadData.
  3. În timp ce înregistrați o macrocomandă LoadData importați date din fișier date.csv- așa cum am făcut în partea anterioară a lecției.
  4. Când importul este complet, opriți înregistrarea macrocomenzii.
  5. Eliminați toate datele din celule.
  6. Salvați fișierul ca șablon Excel cu suport macro (extensie XLTM).

Astfel, prin rularea acestui șablon, aveți acces la două macrocomenzi - una încarcă date, cealaltă le formatează.

Dacă doriți să intrați în programare, puteți combina acțiunile acestor două macrocomenzi într-una singură - pur și simplu prin copierea codului din LoadData până la începutul codului FormatData.