OrdinadorsProgramari

VBA Excel: programes d'exemple. Macros en Excel

Poques persones saben que la primera versió del popular producte de Microsoft Excel va aparèixer en 1985. Des de llavors, ha estat objecte de diverses modificacions i la demanda de milions d'usuaris de tot el món. No obstant això, molts d'ells treballen només amb una mica de capacitat de bits d'aquest full de càlcul i ni tan sols saben com es podria fer la vida més fàcil per a la capacitat de programació d'Excel.

El que és VBA

Programació en Excel es realitza mitjançant l'aplicació bàsica per al llenguatge de programació Visual que va ser construït originalment en el més famós de full de càlcul de Microsoft.

Per el seu mèrit experts atribueixen la relativa facilitat de desenvolupament. Com mostra la pràctica, VBA pot dominar els conceptes bàsics, fins i tot els usuaris que no tenen coneixements de programació professional. Per VBA característiques inclouen l'execució d'scripts en l'entorn d'aplicacions d'oficina.

El desavantatge d'aquest programa són els problemes associats amb la compatibilitat de diferents versions. Ells són causats pel fet que el codi VBA del programa es refereix a la funcionalitat que està present en la nova versió del producte, però no a l'antic. També hi ha un gran desavantatge i excessivament alt grau d'obertura de codi per canviar la cara d'un estrany. No obstant això, Microsoft Office i IBM Lotus Symphony permet als usuaris aplicar els ajustos del codi d'entrada de xifrat i contrasenya per a mostrar-la.

Objectes, col·leccions, propietats i mètodes

És amb aquests conceptes que necessita per entendre els que treballaran en l'entorn VBA. En primer lloc, cal entendre el que és l'objecte. En Excel, en aquest acte com un full, un llibre, i l'àrea de cel · les. Aquests objectes tenen jerarquia especial, és a dir, obeir a l'altra.

El principal d'ells és l'aplicació, el programa Excel corresponent a si mateix. Els llibres seguit, fulls de càlcul, i el rang. Per exemple, per referir-se a la cel A1 en un full específic d'assenyalar el camí, tenint en compte la jerarquia.

Pel que fa al concepte de "col·lecció", aquest grup d'objectes de la mateixa classe, en què es dóna la gravació ChartObjects. Els seus elements són també objectes.

El següent que - propietats. Es tracta d'una característica necessària de qualsevol objecte. Per exemple, per al rang - és un valor o fórmula.

Mètodes - és la comanda per mostrar que desitja realitzar. En escriure codi en VBA que se separin des del punt objecte. Per exemple, com es mostrarà més endavant, molt sovint quan es programa en la comanda "Excel" utilitzar cèl·lules (1,1) .Seleccionar. Això vol dir que és necessari per seleccionar una cel·la amb coordenades (1,1), és a dir A1.

No obstant això, sovint s'utilitza Selection.ClearContents. La seva posada en marxa està buidant el contingut de la cel·la seleccionada.

Com començar

En primer lloc, es vol crear l'arxiu i guardar-lo, assignar un nom i seleccionar el tipus de «llibre d'Excel habilitat per a macros".

A continuació, aneu a l'aplicació VB, que és suficient per a utilitzar una combinació de «Alt» «F11» clau i. següent:

  • a la barra de menú a la part superior de la finestra, feu clic a la icona costat de la icona d'Excel;
  • Mudule selecciona la comanda;
  • seguir fent clic a la icona amb el disquet;
  • escriure, per exemple, un esquema de codi.

Es veu de la següent manera:

subprograma ()

'El nostre codi

End Sub

Recordeu que la línia " 'El nostre codi" serà ressaltat en un color diferent (verd). La raó d'aquest apòstrof, lliurat en el principi de la cadena, el que indica que el que segueix és un comentari.

Ara es pot escriure cap codi i crear per si mateixos una nova eina en VBA Excel (llista de programes d'exemple. Etc.). Per descomptat, aquells que estan familiaritzats amb els conceptes bàsics de Visual Basic, serà molt més fàcil. No obstant això, fins i tot els que no en tenen, si vostè vol ser capaç de sentir-se còmode amb força rapidesa.

Macros en Excel

Darrere d'aquest nom s'amaga programes escrits en llenguatge Visual Basic per a aplicacions. Per tant, la programació d'Excel - és crear una macro per al codi desitjat. Amb aquesta capacitat, Microsoft full de càlcul auto-desenvolupa, adaptant-se a les necessitats d'un usuari en particular. Després d'haver tractat amb la forma de crear mòduls per a l'escriptura de macros, és possible procedir amb exemples concrets del programa de VBA Excel. És millor començar amb els codis més bàsics és.

exemple 1

Tasca: Escriure un programa que va a copiar el valor del contingut d'una cel·la i després escriure a un altre.

Per a això:

  • obrir la pestanya "Veure";
  • moure la icona de "macros";
  • agitar per al "Gravar macro";
  • omplir forma oberta.

Per simplificar, en el "Nom de macro" sortir "Makros1" i en el "Tecla de mètode abreujat" s'insereix, per exemple, hh (això vol dir que pot executar el programa d'exemple serà «Ctrl + H» equip blitz). Premeu Retorn.

Ara que ha començat a gravar la macro, constitueixen el contingut d'una cel·la a una altra. Tornar a la icona original. Feu clic a "Gravar macro". Aquesta acció marca la finalització dels applets.

següent:

  • novament en moviment a la cadena "macros";
  • es selecciona a la llista "Macro 1";
  • clic a "Executar" (les mateixes obertures d'acció llançat combinació de tecles Ctrl + «hh»).

Com a resultat, l'acció que s'ha realitzat durant l'enregistrament de la macro.

Té sentit per veure com el codi és el següent. Per a això, vagi de nou a la cadena "macros" i feu clic a "Edita" o "Enter". Com a resultat, ells es troben a l'entorn VBA. En realitat, el propi codi es troba entre les línies macro Sub Makros1 () i End Sub.

Si la còpia s'ha realitzat, per exemple, d'una cel·la A1 a la cel·la C1, una de les línies de codi es veurà així Range ( "C1"). Selecciona. En la traducció, es veu com "Range (" C1 "). Select", en altres paraules, fa una transició a VBA de l'Excel, a la cel·la C1.

Una part activa del codi complerta ActiveSheet.Paste equip. Significa gravació de continguts cel·la seleccionada (en aquest cas, A1) a la cel·la C1 seleccionat.

exemple 2

cicles VBA ajuden a crear diferents macros en Excel.

cicles VBA ajuden a crear diferents macros. Suposem que hi ha una funció y = x + x 3 + 3x 2 - cos (x). Vols crear una macro pels seus gràfics. Això només es pot fer mitjançant l'ús de cicles de VBA.

Per al valor inicial i final de les funcions d'argument prendre x1 = 0 i x2 = 10. A més, cal introduir una constant - el valor per al pas canvia l'argument i un valor inicial per al comptador.

Tots els exemples de macros VBA Excel es creen utilitzant el mateix procediment que s'ha exposat anteriorment. En aquest cas particular, el codi és el següent:

Programm sub ()

x1 = 1

x2 = 10

borrissol = 0,1

i = 1

Si bé no x1

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

Les cèl·lules (i, 1) .Value = x1 (valor x1 escrits en la memòria amb les coordenades (i, 1))

Les cèl·lules (i, 2) .Value = i (valor de i s'escriu a la cel amb les coordenades (i, 2))

i = i + 1 (recompte vàlid);

x1 = x1 + borrissol (argument es canvia per la mida de pas);

bucle

End Sub.

Com a resultat d'aquesta macro run "Excel" obtenir dues columnes, la primera de les quals es registren els valors de x, i el segon - a i.

A continuació, programar capaços de construir sobre ells, l'estàndard per a "Excel".

exemple 3

Per dur a terme cicles en VBA Excel 2010, així com en altres versions, juntament amb el ja reduït Do Mentre que el disseny utilitza.

Consideri un programa que crea una columna. A cada cel·la es gravarà quadrats número de línia corresponent. Per a l'ús del disseny permetrà gravar-la molt breument, sense l'ús d'un comptador.

En primer lloc, cal crear una macro, com es descriu anteriorment. A continuació, escriure el codi en si mateix. Creiem que estem interessats en els valors de les 10 cel·les. El codi és el següent.

Per i = 1 a 10 Següent

La comanda es transfereix a la llengua "humà", com "repetit d'1 a 10 en increments d'un".

Si la tasca de rebre la columna amb quadrats, per exemple, tots els enters senars entre 1 i 11, s'escriu:

Per i = 1 a 10 pas 1 Següent.

A continuació, pas - pas. En aquest cas, és igual a dos. Per defecte, l'absència de la paraula en el bucle vol dir que un sol pas.

Els resultats necessiten ser emmagatzemats en el nombre de cèl·lules (i, 1). Llavors, cada vegada que s'inicia el cicle amb un increment en el valor d'i pas creixerà de forma automàtica i número de línia. Per tant, hi haurà optimització de codi.

En general, el codi es veuria així:

subprograma ()

Per i = 1 a 10 Pas 1 (es pot escriure només per a i = 1 a 10)

Les cèl·lules (i, 1) .Value = i ^ 2 (és a dir, valor quadrat s'escriuen a la cel (i, 1) i)

A continuació (en un sentit ocupa el paper dels mitjans de comptador i una altra inici del cicle)

End Sub.

Si es fa correctament, incloent la gravació i de funcionament macros (veure. Les instruccions anteriors), llavors es diu cada vegada que s'obté una mida donat columna (en aquest cas consta de 10 cèl·lules).

exemple 4

A la vida quotidiana, molt sovint cal prendre tal o qual decisió depenent d'algunes condicions. No es pot prescindir d'ells en VBA Excel. Exemples de programes que es selecciona el curs posterior de l'algoritme en lloc d'inicialment predeterminats, més el disseny d'ús comú de Si ... Llavors (per als casos difícils) Si ... Llavors ... Si FI.

Penseu el cas particular. Suposeu que voleu crear una macro per "Excel" a la cèl·lula amb les coordenades (1,1) ha estat gravat:

1 si l'argument és positiu;

0 si l'argument és zero;

1, si l'argument és negatiu.

La creació d'una macro com de "Excel" comença d'una manera estàndard, mitjançant l'ús de tecles "calents" Alt i F11. A més escrit el següent codi:

subprograma ()

x = cèl·lules (1, 1) .Value (Aquesta comanda assigna el valor de x coordenades dels continguts de la cel·la (1, 1))

Si x> 0, llavors les cèl·lules (1, 1) .Value = 1

Si x = 0, llavors les cèl·lules (1, 1) .Value = 0

Si x <0, llavors les cèl·lules (1, 1) .Value = -1

End Sub.

Queda per executar una macro i posar-se en "Excel" valor desitjat per l'argument.

funcions de VBA

Com s'hauran adonat, en la més famosa aplicació de full de càlcul Microsoft programa no és massa difícil. Especialment si vostè aprèn com utilitzar les funcions de VBA. En total, aquest llenguatge de programació creat específicament per a escriure aplicacions en "Excel" i la Paraula, al voltant de 160 funcions. Es poden dividir en diversos grups grans. Ells són:

  • funcions matemàtiques. Aplicant-les a l'argument del valor del cosinus s'obté, el logaritme natural, i així tota la peça.
  • Les funcions financeres. A causa de la seva disponibilitat i ús de programació en Excel, pot obtenir eines eficaces per a la comptabilitat i els acords financers.
  • funcions de processament de matriu. Aquests inclouen Array, IsArray; LBound; UBound.
  • VBA Excel funciona per a la línia. Es tracta d'un grup bastant gran. Inclou, per exemple, la funció d'espai per crear una cadena amb un nombre de buits igual al argument nombre enter o transferències de símbols Asc al codi ANSI. Tots ells són àmpliament utilitzats i permeten treballar amb cadenes al "Excel" per crear aplicacions molt més fàcil treballar amb aquestes taules.
  • funcions de conversió de tipus de dades. Per exemple, CVar retorna argument expressió, la conversió a tipus de dades Variant.
  • Funcions de data. S'expandeixen en gran mesura les característiques estàndard de "Excel". Per tant, la funció retorna el nom WeekdayName (total o parcial) del dia de la setmana pel seu nombre. Encara més útil és el temporitzador. Es dóna el nombre de segons transcorreguts des de la mitjanit fins a un moment determinat del dia.
  • Funció per convertir un argument numèric en els diferents sistemes numèrics. Per exemple, octubre dóna sortida a la representació octal del nombre.
  • funcions de format. El més important d'ells és el format. Retorna una variant amb una expressió amb format d'acord a les instruccions donades en la descripció del format.
  • i així successivament.

L'estudi de les propietats d'aquestes funcions i la seva aplicació s'ampliarà significativament l'abast de "Excel".

exemple 5

Anem a tractar de resoldre problemes més complexos. Per exemple:

document de paper donen el nivell real dels costos de l'informe de l'empresa. Es requereix:

  • desenvolupar la seva part del patró del full de càlcul "Excel";
  • fer un programa de VBA que li demanarà les dades en brut per omplir, per dur a terme els càlculs necessaris i omplir la plantilla de la cel·la corresponent.

Penseu una de les següents solucions.

La creació d'una plantilla

Totes les accions que es duen a terme en un full estàndard en Excel. cèl·lules lliures reservats per a la introducció de dades en els mesos, anys, les companyies de títol per al consumidor, la quantitat dels costos, el seu nivell de facturació. A mesura que el nombre d'empreses (empreses), respecte de la qual no es registra l'informe, les cèl·lules es fan sobre la base de valors i nom professional no es reserva amb antelació. Full de treball assignat a un nou nom. Per exemple, "Informe Օ".

les variables

Per escriure el programa omplir automàticament a la plantilla, seleccioneu la notació. Seran utilitzades per les variables:

  • NN nombre de la fila actual de la taula;
  • TP i TF - planificat i volum de negocis real;
  • SF i SP - costos totals previstos i reals;
  • IP i IF - planejat i el nivell dels costos reals.

Es designa per les mateixes lletres, però amb un "prefix» Itog acumulació total per a aquesta columna. Per exemple, ItogTP - Pel que fa a la columna titulada, "la facturació prevista."

Solució del problema utilitzant la programació de VBA

Usant aquesta notació, s'obté la fórmula de la variància. Si vol fer el càlcul en% tenim (F - P) / P * 100 i en la quantitat de - (F - P).

Els resultats d'aquests càlculs poden ser millor només per fer un full de càlcul "Excel" en les cel·les corresponents.

Pel resultat i el pronòstic de fet obtinguda per fórmules ItogP = ItogP + P i ItogF = ItogF + F.

Per desviacions utilitzen = (ItogF - ItogP) / ItogP * 100 si el càlcul es porta a terme com un percentatge, i si el valor total - (ItogF - ItogP).

Els resultats registren una vegada més en les cèl·lules apropiades, el que no hi ha necessitat de assignar-los a variables.

Abans de començar a crear un programa que voleu desar el llibre de treball, per exemple, sota el nom de "Otchet1.xls".

Premi el botó "Crear una taula d'informes," s'ha de pressionar a 1 hora després d'introduir la informació de la capçalera. Ha de conèixer i altres normes. En particular, el botó "Afegeix una línia" ha de ser pressionat cada vegada que després d'entrar a la taula de valors per a cada activitat. Després d'introduir totes les dades necessàries per pressionar el botó "Finalitzar", i després canviar a "Excel" a la finestra.

Ara que ja sap com resoldre el problema d'Excel amb macros. La capacitat d'utilitzar VBA Excel (veure programes d'exemple. A dalt) i pot ser que hagi de treballar en l'entorn dels més populars en aquest moment, l'editor de text "Paraula". En particular, mitjançant el registre, com es mostra en el principi d'aquest article, o escrivint codi per crear els botons de menú a través del qual moltes de les operacions sobre el text que es pot fer prement les tecles de torn o través de la icona "Veure" i la pestanya "macros".

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 ca.birmiss.com. Theme powered by WordPress.