Com utilitzar les funcions VBA integrades dExcel

Excel VBA ofereix nombroses funcions integrades. Algunes d'aquestes funcions d' Excel VBA prenen arguments, i altres no.

Exemples de funcions d'Excel VBA

Aquí trobareu alguns exemples d'ús de funcions VBA al codi. En molts d'aquests exemples, la funció MsgBox mostra un valor en un quadre de missatge. Sí, MsgBox és una funció VBA, una funció força inusual, però una funció tanmateix. Aquesta funció útil mostra un missatge en un quadre de diàleg i també retorna un valor.

Mostra la data o l'hora del sistema

El primer exemple utilitza la funció Data de VBA per mostrar la data actual del sistema en un quadre de missatge:

Sub ShowDate()
  MsgBox "Avui és: " & Data
End Sub

Tingueu en compte que la funció Data no utilitza cap argument. A diferència de les funcions del full de treball, una funció VBA sense argument no requereix un conjunt buit de parèntesis. De fet, si escriviu un conjunt buit de parèntesis, el VBE els elimina ràpidament.

Per obtenir l'hora del sistema, utilitzeu la funció Hora. I si ho voleu tot, feu servir la funció Ara per retornar tant la data com l'hora.

Trobar una longitud de corda

El procediment següent utilitza la funció VBA Len, que retorna la longitud d'una cadena de text. La funció Len pren un argument: la cadena. Quan executeu aquest procediment, el quadre de missatge mostra el vostre nom i el nombre de caràcters del vostre nom.

Sub GetLength()
  Atenua MyName com a cadena
  Dim StringLength tan llarg
  El meu nom = Application.UserName
  StringLength = Len(MyName)
  MsgBox MyName & " té caràcters " & StringLength & "".
End Sub

Com utilitzar les funcions VBA integrades d'Excel

Càlcul de la longitud del teu nom.

Excel també té una funció LEN, que podeu utilitzar a les fórmules del vostre full de treball. La versió d'Excel i la funció VBA funcionen igual.

Mostra el nom d'un mes

El procediment següent utilitza la funció MonthName, que retorna el nom d'un mes. MonthName utilitza un argument: un nombre enter entre 1 i 12.

Sub ShowMonthName()
  Dim ThisMonth As Long
  ThisMonth = Mes (Data)
  MsgBox MonthName (Aquest mes)
End Sub

Aquest procediment utilitza la funció Mes per obtenir el mes actual (com a valor) i aquest valor s'assigna a la variable ThisMonth. A continuació, la funció MonthName converteix el valor en text. Per tant, si executeu aquest procediment a l'abril, el quadre de missatge mostrarà el text abril.

De fet, la variable ThisMonth no és necessària. Podeu obtenir el mateix efecte amb aquesta expressió, que utilitza tres funcions VBA:

MonthName(Mes(Data))

Aquí, la data actual es passa com a argument a la funció Month, que retorna un valor que es passa com a argument a la funció MonthName.

Determinació de la mida d'un fitxer

El següent procediment Sub mostra la mida, en bytes, del fitxer executable d'Excel. Troba aquest valor mitjançant la funció FileLen:

Sub GetFileSize()
  Atenua el fitxer com a cadena
  TheFile = "C:\Fitxers de programa (x86)\Microsoft Office\root\Office16\EXCEL.EXE"
  MsgBox FileLen (El fitxer)
End Sub

Observeu que aquesta rutina codifica el nom del fitxer (és a dir, indica explícitament el camí). Això no és una bona idea. És possible que el fitxer no estigui a la unitat C o que la carpeta Excel tingui un nom diferent. La següent afirmació mostra un millor enfocament:

TheFile = Application.Path & "\EXCEL.EXE"

Path és una propietat de l'objecte Aplicació. Simplement retorna el nom de la carpeta on està instal·lada l'aplicació (és a dir, Excel) (sense barra invertida).

Identificació del tipus d'objecte seleccionat

El procediment següent utilitza la funció TypeName, que retorna el tipus de selecció al full de treball (com a cadena):

Sub ShowSelectionType()
  Dim SelType com a cadena
  SelType = TypeName (Selecció)
  MsgBox SelType
End Sub

La selecció pot ser un rang, una imatge, un rectangle, una àrea de gràfic o qualsevol altre tipus d'objecte que es pugui seleccionar.

La funció TypeName és molt versàtil. També podeu utilitzar aquesta funció per determinar el tipus de dades d'una variable.

Funcions d'Excel VBA que fan més que retornar un valor

Algunes funcions de VBA van més enllà del deure. En lloc de simplement retornar un valor, aquestes funcions tenen alguns efectes secundaris útils.

Funcions VBA amb avantatges secundaris útils

Funció Què fa
MsgBox Mostra un quadre de diàleg pràctic que conté un missatge i botons. La funció retorna un codi que identifica quin botó fa clic l'usuari.
InputBox Mostra un quadre de diàleg senzill que demana a l'usuari alguna entrada. La funció retorna el que l'usuari introdueix al quadre de diàleg.
Shell Executa un altre programa. La funció retorna l' ID de la tasca (un identificador únic) de l'altre programa (o un error si la funció no pot iniciar l'altre programa).

Descobrint les funcions d'Excel VBA

Com esbrineu quines funcions ofereix VBA? Bona pregunta. La millor font és el sistema Excel VBA . Una altra manera és escriure VBA , seguit d'un punt. Obtindreu una llista d'elements. Els que tenen una icona verda són funcions. Si aquesta funció no funciona, seleccioneu Eines → Opcions de VBE, feu clic a la pestanya Editor i marqueu l'opció Membres de la llista automàtica.

Com utilitzar les funcions VBA integrades d'Excel

Una manera de mostrar una llista de funcions de VBA.

Hi ha més de 140 funcions diferents disponibles a VBA. Alguns són tan especialitzats i obscurs que mai els necessitareu. Altres, però, són força útils per a moltes aplicacions.

Les funcions integrades més útils d'Excel VBA

Funció Què fa
Abs Retorna el valor absolut d'un nombre
Matriu Retorna una variant que conté una matriu
Tria Retorna un valor d'una llista d'elements
Chr Converteix un valor ANSI en una cadena
CurDir Retorna el camí actual
Data Retorna la data actual del sistema
DataAfegir Retorna una data a la qual s'ha afegit un interval de temps especificat, per exemple, un mes a partir d'una data concreta
DataDiff Retorna un nombre enter que mostra el nombre d'intervals de temps especificats entre dues dates, per exemple, el nombre de mesos entre ara i el vostre aniversari.
DataPart Retorna un nombre enter que conté la part especificada d'una data determinada, per exemple, el dia d'una data de l'any
DataSerial Converteix una data en un número de sèrie
DataValue Converteix una cadena en una data
Dia Retorna el dia del mes a partir d'un valor de data
Dir Retorna el nom d'un fitxer o directori que coincideix amb un patró
Err Retorna el número d'error d'una condició d'error
Error Retorna el missatge d'error que correspon a un número d'error
Exp Retorna la base del logaritme natural (e) elevada a una potència
FileLen Retorna el nombre de bytes d'un fitxer
Arreglar Retorna la part entera d'un nombre
Format Mostra una expressió en un format determinat
GetSetting Retorna un valor del registre de Windows
Hores Retorna la part horaria d'un temps
InputBox Mostra un quadre per demanar a l'usuari que introdueixi
InStr Retorna la posició d'una cadena dins d'una altra cadena (comptant des del principi)
InStrRev Retorna la posició d'una cadena dins d'una altra cadena (comptant des del final)
Int Retorna la part entera d'un nombre
IsArray Retorna True si una variable és una matriu
IsDate Retorna True si una expressió és una data
Està buit Retorna True si no s'ha inicialitzat una variable
IsError Retorna True si una expressió és un valor d'error
Està perdut Retorna True si no s'ha passat un argument opcional a un procediment
És Null Retorna True si una expressió no conté dades vàlides
IsNumeric Retorna True si una expressió es pot avaluar com a nombre
LBound Retorna el subíndex més petit per a una dimensió d'una matriu
LCase Retorna una cadena convertida en minúscules
Esquerra Retorna un nombre especificat de caràcters des de l'esquerra d'una cadena
Len Retorna el nombre de caràcters d'una cadena
Mitjana Retorna un nombre especificat de caràcters d'una cadena
Minut Retorna la part dels minuts d'un valor de temps
Mes Retorna el mes a partir d'un valor de data
MsgBox Mostra un quadre de missatge i (opcionalment) retorna un valor
Ara Retorna la data i l'hora actuals del sistema
Substitueix Substitueix una subcadena d'una cadena per una altra subcadena
RGB Retorna un valor numèric RGB que representa un color
Dret Retorna un nombre especificat de caràcters a la dreta d'una cadena
Rnd Retorna un nombre aleatori entre 0 i 1
Segon Retorna la part de segons d'un valor de temps
Shell Executa un programa executable
Espai Retorna una cadena amb un nombre d'espais especificat
Dividir Divideix una cadena en parts, utilitzant un caràcter delimitador
Sqr Retorna l'arrel quadrada d'un nombre
Corda Retorna un caràcter o cadena que es repeteix
Temps Retorna l'hora actual del sistema
Temporitzador Retorna el nombre de segons des de la mitjanit
Serial temporal Retorna l'hora d'una hora, un minut i un segon especificats
TimeValue Converteix una cadena en un número de sèrie temporal
Tallar Retorna una cadena sense espais inicials ni finals
TypeName Retorna una cadena que descriu el tipus de dades d'una variable
UBound Retorna el subíndex més gran disponible per a la dimensió d'una matriu
UCase Converteix una cadena en majúscules
Val Retorna els números continguts en una cadena
Dia laborable Retorna un número que representa un dia de la setmana
Curs Retorna l'any a partir d'un valor de data

Per obtenir detalls complets sobre una funció concreta de VBA d'Excel , escriviu el nom de la funció en un mòdul VBA, moveu el cursor a qualsevol lloc del text i premeu F1.

Deixa un comentari

Com bloquejar Microsoft Word dobrir fitxers en mode només de lectura a Windows

Com bloquejar Microsoft Word dobrir fitxers en mode només de lectura a Windows

Com bloquejar Microsoft Word d'obrir fitxers en mode de només lectura a Windows Microsoft Word obre fitxers en mode de només lectura, cosa que fa que sigui impossible editar-los? No us preocupeu, els mètodes es mostren a continuació

Com solucionar la impressió incorrecta de documents de Microsoft Word

Com solucionar la impressió incorrecta de documents de Microsoft Word

Com corregir errors en imprimir documents incorrectes de Microsoft Word Els errors en imprimir documents de Word amb tipus de lletra canviats, paràgrafs desordenats, falta de text o contingut perdut són força habituals. No obstant això, no

Esborra els dibuixos de llapis i ressaltats a les teves diapositives de PowerPoint

Esborra els dibuixos de llapis i ressaltats a les teves diapositives de PowerPoint

Si heu utilitzat el llapis o el marcador per dibuixar a les vostres diapositives de PowerPoint durant una presentació, podeu desar els dibuixos per a la següent presentació o esborrar-los de manera que la propera vegada que el mostreu, començareu amb diapositives de PowerPoint netes. Seguiu aquestes instruccions per esborrar dibuixos a llapis i ressaltadors: Esborrant línies una a […]

Contingut de la biblioteca destils a SharePoint 2010

Contingut de la biblioteca destils a SharePoint 2010

La biblioteca d'estils conté fitxers CSS, fitxers de llenguatge de full d'estil extensible (XSL) i imatges utilitzades per pàgines mestres predefinides, dissenys de pàgina i controls a SharePoint 2010. Per localitzar fitxers CSS a la biblioteca d'estils d'un lloc de publicació: Trieu Accions del lloc→Visualitza Tot el contingut del lloc. Apareix el contingut del lloc. La biblioteca d'estil es troba a […]

Formateu els números en milers i milions als informes dExcel

Formateu els números en milers i milions als informes dExcel

No desbordeu el vostre públic amb números gigantesques. A Microsoft Excel, podeu millorar la llegibilitat dels vostres taulers i informes formatant els vostres números perquè apareguin en milers o milions.

Com compartir i seguir els llocs de SharePoint

Com compartir i seguir els llocs de SharePoint

Apreneu a utilitzar les eines de xarxes socials de SharePoints que permeten a persones i grups comunicar-se, col·laborar, compartir i connectar-se.

Com convertir les dates a formats Julian a Excel

Com convertir les dates a formats Julian a Excel

Les dates julianes s'utilitzen sovint en entorns de fabricació com a marca de temps i referència ràpida per a un número de lot. Aquest tipus de codificació de dates permet als minoristes, consumidors i agents de serveis identificar quan es va fabricar un producte i, per tant, l'antiguitat del producte. Les dates julianes també s'utilitzen en programació, militars i astronomia. Diferents […]

Com crear una aplicació web daccés

Com crear una aplicació web daccés

Podeu crear una aplicació web a Access 2016. Què és, de totes maneres, una aplicació web? Bé, web vol dir que està en línia i l'aplicació és només una abreviatura de "aplicació". Una aplicació web personalitzada és una aplicació de base de dades en línia a la qual s'accedeix des del núvol mitjançant un navegador. Creeu i manteniu l'aplicació web a la versió d'escriptori […]

Barra dinici ràpid a SharePoint 2010

Barra dinici ràpid a SharePoint 2010

La majoria de les pàgines del SharePoint 2010 mostren una llista d'enllaços de navegació a la barra d'inici ràpid al costat esquerre de la pàgina. La barra d'inici ràpid mostra enllaços al contingut del lloc destacat, com ara llistes, biblioteques, llocs i pàgines de publicació. La barra d'inici ràpid inclou dos enllaços molt importants: Enllaç de tot el contingut del lloc: el […]

Què signifiquen els missatges derror del solucionador a Excel?

Què signifiquen els missatges derror del solucionador a Excel?

Per a problemes senzills, Solver a Excel sol trobar ràpidament els valors òptims de la variable Solver per a la funció objectiu. Però, en alguns casos, Solver té problemes per trobar els valors de la variable Solver que optimitzen la funció objectiu. En aquests casos, Solver normalment mostra un missatge o un missatge d'error que descriu o discuteix el problema que […]