Operadores VBA e funciĆ³ns integradas

DeclaraciĆ³ns de Excel VBA

Ao escribir cĆ³digo VBA en Excel, Ćŗsase un conxunto de operadores integrados en cada paso. Estes operadores divĆ­dense en operadores matemĆ”ticos, de cadea, de comparaciĆ³n e lĆ³xicos. A continuaciĆ³n, analizaremos cada grupo de operadores en detalle.

Operadores matemƔticos

Os principais operadores matemƔticos de VBA estƔn listados na seguinte tƔboa.

A columna da dereita da tĆ”boa mostra a prioridade predeterminada do operador en ausencia de parĆ©nteses. Engadindo parĆ©nteses a unha expresiĆ³n, pode cambiar a orde na que se executan as instruciĆ³ns VBA como quere.

OperadoracciĆ³nprioridade

(1 - mƔis alto; 5 - mƔis baixo)

^operador de exponenciaciĆ³n1
*operador de multiplicaciĆ³n2
/operador de divisiĆ³n2
DivisiĆ³n sen resto: devolve o resultado de dividir dous nĆŗmeros sen resto. Por exemplo, 74 devolverĆ” o resultado 13
CoraxeOperador mĆ³dulo (resto): devolve o resto despois de dividir dous nĆŗmeros. Por exemplo, 8 Contra 3 devolverĆ” o resultado 2.4
+Operador de adiciĆ³n5
-operador de resta5

Operadores de corda

O operador bĆ”sico de cadea en Excel VBA Ć© o operador de concatenaciĆ³n & (fusionar):

OperadoracciĆ³n
&operador de concatenaciĆ³n. Por exemplo, a expresiĆ³n Ā«AĀ» e Ā«BĀ» devolverĆ” o resultado AB.

Operadores de comparaciĆ³n

Os operadores de comparaciĆ³n Ćŗsanse para comparar dous nĆŗmeros ou cadeas e devolver un valor booleano de tipo Booleano (Verdadeiro ou falso). Os principais operadores de comparaciĆ³n de Excel VBA estĆ”n listados nesta tĆ”boa:

OperadoracciĆ³n
=Igualmente
<>Non igual
<menos
>Mellor
<=Menor ou igual
>=Maior ou igual

Os operadores lĆ³xicos

Os operadores lĆ³xicos, como os operadores de comparaciĆ³n, devolven un valor booleano de tipo Booleano (Verdadeiro ou falso). Os principais operadores lĆ³xicos de Excel VBA estĆ”n listados na seguinte tĆ”boa:

OperadoracciĆ³n
EoperaciĆ³n de conxunciĆ³n, operador lĆ³xico Š˜. Por exemplo, a expresiĆ³n A e B volverĆ” CertoSe A Šø B ambos son iguais Certo, se non, regresa Falso.
OrOperaciĆ³n de disxunciĆ³n, operador lĆ³xico OR. Por exemplo, a expresiĆ³n A ou B volverĆ” CertoSe A or B son iguais Certo, e volverĆ” FalsoSe A Šø B ambos son iguais Falso.
NonOperaciĆ³n de negaciĆ³n, operador lĆ³xico NON. Por exemplo, a expresiĆ³n Non A volverĆ” CertoSe A igualmente Falso, ou devolver FalsoSe A igualmente Certo.

A tĆ”boa anterior non enumera todos os operadores lĆ³xicos dispoƱibles en VBA. PĆ³dese atopar unha lista completa de operadores lĆ³xicos no Centro de Desenvolvedores de Visual Basic.

FunciĆ³ns integradas

Hai moitas funciĆ³ns integradas dispoƱibles en VBA que se poden usar ao escribir cĆ³digo. A continuaciĆ³n mĆ³stranse algĆŗns dos mĆ”is utilizados:

funciĆ³nacciĆ³n
AbsDevolve o valor absoluto do nĆŗmero indicado.

Exemplo:

  • Abdominais (-20) devolve o valor 20;
  • Abdominales (20) devolve o valor 20.
ChrDevolve o carƔcter ANSI correspondente ao valor numƩrico do parƔmetro.

Exemplo:

  • Chr (10) devolve un salto de liƱa;
  • Chr (97) devolve un carĆ”cter a.
dataDevolve a data actual do sistema.
DataEngadirEngade un intervalo de tempo especificado Ć” data indicada. Sintaxe da funciĆ³n:

DateAdd(ŠøŠ½Ń‚ŠµŃ€Š²Š°Š», чŠøсŠ»Š¾, Š“Š°Ń‚Š°)

Onde estĆ” o argumento intervalo determina o tipo de intervalo de tempo engadido ao dado data na cantidade especificada no argumento nĆŗmero.

Argumento intervalo pode tomar un dos seguintes valores:

intervaloValor
aaaaano
qtrimestre
mmes
ydĆ­a do ano
ddĆ­a
wdĆ­a da semana
wwsemana
hmomento
nminuto
ssegundo

Exemplo:

  • DataEngadir(Ā«dĀ», 32, Ā«01/01/2015Ā») engade 32 dĆ­as Ć” data 01/01/2015 e asĆ­ devolve a data 02/02/2015.
  • DataEngadir(Ā«wwĀ», 36, Ā«01/01/2015Ā») engade 36 semanas Ć” data 01/01/2015 e devolve a data 09/09/2015.
DataDiffCalcula o nĆŗmero de intervalos de tempo especificados entre dĆŗas datas dadas.

Exemplo:

  • DateDiff(Ā«dĀ», Ā«01/01/2015Ā», Ā«02/02/2015Ā») calcula o nĆŗmero de dĆ­as entre o 01/01/2015 e o 02/02/2015, devolve 32.
  • DateDiff(Ā«wwĀ», Ā«01/01/2015Ā», Ā«03/03/2016Ā») calcula o nĆŗmero de semanas entre o 01/01/2015 e o 03/03/2016, devolve 61.
dĆ­aDevolve un nĆŗmero enteiro correspondente ao dĆ­a do mes na data indicada.

Exemplo: DĆ­a(Ā«29/01/2015Ā») devolve o nĆŗmero 29.

momentoDevolve un nĆŗmero enteiro correspondente ao nĆŗmero de horas no momento dado.

Exemplo: Hora(Ā«22:45:00Ā») devolve o nĆŗmero 22.

InStrLeva un nĆŗmero enteiro e dĆŗas cadeas como argumentos. Devolve a posiciĆ³n de apariciĆ³n da segunda cadea dentro da primeira, comezando a busca na posiciĆ³n dada por un nĆŗmero enteiro.

Exemplo:

  • InStr(1, "AquĆ­ estĆ” a palabra de busca", "palabra") devolve o nĆŗmero 13.
  • InStr(14, "AquĆ­ estĆ” a palabra de busca e aquĆ­ outra palabra de busca", "palabra") devolve o nĆŗmero 38.

Nota: Ɖ posible que non se especifique o argumento nĆŗmero, caso en que a busca comeza a partir do primeiro carĆ”cter da cadea especificada no segundo argumento da funciĆ³n.

IntDevolve a parte enteira do nĆŗmero indicado.

Exemplo: Int (5.79) devolve o resultado 5.

IsdateA AHP selecciona XNUMX Kirkland rĆŗa; POBox XNUMX, Newcastle, ao igual que o seu enderezo para o servizo de todas as notificaciĆ³ns formais e procesos legais en conexiĆ³n con estes termos e condiciĆ³ns de venda ("Domicilium"). Vostede decide escoller a direcciĆ³n especificado no formulario de orde mercadorĆ­as como o seu Domicilium. Calquera das partes pode cambiar a sĆŗa Domicilium para calquera outro enderezo fĆ­sico por non menos que dĆ­as de antelaciĆ³n XNUMX por escrito Ć” outra parte. Anuncios deben ser enviados por correo man, pre-pago rexistrou, fax ou correo electrĆ³nico e debe estar en inglĆ©s. Os avisos enviados - Certose o valor indicado Ć© unha data, ou Falso - se a data non Ć©.

Exemplo:

  • IsDate(Ā«01/01/2015Ā») Volta Certo;
  • IsDate (100) Volta Falso.
IsErrorA AHP selecciona XNUMX Kirkland rĆŗa; POBox XNUMX, Newcastle, ao igual que o seu enderezo para o servizo de todas as notificaciĆ³ns formais e procesos legais en conexiĆ³n con estes termos e condiciĆ³ns de venda ("Domicilium"). Vostede decide escoller a direcciĆ³n especificado no formulario de orde mercadorĆ­as como o seu Domicilium. Calquera das partes pode cambiar a sĆŗa Domicilium para calquera outro enderezo fĆ­sico por non menos que dĆ­as de antelaciĆ³n XNUMX por escrito Ć” outra parte. Anuncios deben ser enviados por correo man, pre-pago rexistrou, fax ou correo electrĆ³nico e debe estar en inglĆ©s. Os avisos enviados - Certose o valor indicado Ć© un erro, ou Falso ā€“ se non Ć© un erro.
FaltaO nome dun argumento de procedemento opcional pĆ”sase como argumento Ć” funciĆ³n. Falta Volta Certose non se pasou ningĆŗn valor para o argumento do procedemento en cuestiĆ³n.
IsNumericA AHP selecciona XNUMX Kirkland rĆŗa; POBox XNUMX, Newcastle, ao igual que o seu enderezo para o servizo de todas as notificaciĆ³ns formais e procesos legais en conexiĆ³n con estes termos e condiciĆ³ns de venda ("Domicilium"). Vostede decide escoller a direcciĆ³n especificado no formulario de orde mercadorĆ­as como o seu Domicilium. Calquera das partes pode cambiar a sĆŗa Domicilium para calquera outro enderezo fĆ­sico por non menos que dĆ­as de antelaciĆ³n XNUMX por escrito Ć” outra parte. Anuncios deben ser enviados por correo man, pre-pago rexistrou, fax ou correo electrĆ³nico e debe estar en inglĆ©s. Os avisos enviados - Certose o valor indicado pode tratarse como un nĆŗmero, se non, devolve Falso.
esquerdaDevolve o nĆŗmero especificado de caracteres desde o inicio da cadea dada. A sintaxe da funciĆ³n Ć© a seguinte:

Left(стрŠ¾ŠŗŠ°, Š“Š»ŠøŠ½Š°)

onde liƱa Ć© a cadea orixinal e lonxitude Ć© o nĆŗmero de caracteres a devolver, contando desde o inicio da cadea.

Exemplo:

  • Esquerda(ā€œabvgdejziklmnā€, 4) devolve a cadea ā€œabcgā€;
  • Esquerda(ā€œabvgdejziklmnā€, 1) devolve a cadea "a".
LenDevolve o nĆŗmero de caracteres dunha cadea.

Exemplo: Len ("abcdej") devolve o nĆŗmero 7.

MesDevolve un nĆŗmero enteiro correspondente ao mes da data indicada.

Exemplo: Mes(Ā«29/01/2015Ā») devolve o valor 1.

MedioDevolve o nĆŗmero especificado de caracteres desde o medio da cadea dada. Sintaxe da funciĆ³n:

Medio(liƱa, Comezar, lonxitude)

onde liƱa Ć© a cadea orixinal Comezar ā€“ a posiciĆ³n do inicio da cadea que se vai extraer, lonxitude Ć© o nĆŗmero de caracteres que se van extraer.

Exemplo:

  • Medio(ā€œabvgdejziklmnā€, 4, 5) devolve a cadea "onde";
  • Medio(ā€œabvgdejziklmnā€, 10, 2) devolve a cadea "cl".
MinutoDevolve un nĆŗmero enteiro correspondente ao nĆŗmero de minutos no tempo indicado. Exemplo: Minuto(Ā«22:45:15Ā») devolve o valor 45.
AgoraDevolve a data e hora do sistema actual.
dereitoDevolve o nĆŗmero especificado de caracteres desde o final da cadea indicada. Sintaxe da funciĆ³n:

certo(liƱa, lonxitude)

Onde liƱa Ć© a cadea orixinal e lonxitude Ć© o nĆŗmero de caracteres a extraer, contando desde o final da cadea dada.

Exemplo:

  • Dereita(Ā«abvgdezhziklmnĀ», 4) devolve a cadea ā€œclmnā€;
  • Dereita(Ā«abvgdezhziklmnĀ», 1) devolve a cadea "n".
SegundoDevolve un nĆŗmero enteiro correspondente ao nĆŗmero de segundos no tempo indicado.

Exemplo: Segundo ("22:45:15") devolve o valor 15.

SqrDevolve a raƭz cadrada do valor numƩrico pasado no argumento.

Exemplo:

  • Sqr (4) devolve o valor 2;
  • Sqr (16) devolve o valor 4.
TempoDevolve a hora actual do sistema.
IlimitadoDevolve o superĆ­ndice da dimensiĆ³n da matriz especificada.

Nota: Para matrices multidimensionais, un argumento opcional pode ser o Ć­ndice de que dimensiĆ³n se devolver. Se non se especifica, o valor predeterminado Ć© 1.

anoDevolve un nĆŗmero enteiro correspondente ao ano da data indicada. Exemplo: Ano(Ā«29/01/2015Ā») devolve o valor 2015.

Esta lista inclĆŗe sĆ³ unha selecciĆ³n das funciĆ³ns integradas de Excel Visual Basic mĆ”is utilizadas. No Centro de Desenvolvedores de Visual Basic pĆ³dese atopar unha lista exhaustiva de funciĆ³ns de VBA dispoƱibles para usar nas macros de Excel.

Deixe unha resposta