Vba operatori matematici adunare, scădere, divizare, întreg; modulo

Operatorul de atribuire este folosit pentru a atribui rezultatul unei variabile de expresie.

operațiune de atribuire are două forme sintactice:

1 Să varname = expresie
2 varname = expresie

varname - orice VBA variabilă

Expresia - Orice expresie VBA

Prima opțiune este operatorul de atribuire a fost utilizat în primele limbaje de programare de bază. A doua opțiune este folosită în versiunea modernă a VBA.

În cazul în care declarația de atribuire VBA evaluează în primul rând expresia de pe partea dreaptă a operatorului de atribuire, iar apoi stochează rezultatul expresiei în variabila al cărei nume se află pe partea stângă a semnului egal.

X = 5 + 7; Y = X + 5; Z = X - Y; A = B; I = I + 1

Utilizatorii Novice, uneori, nu înțeleg sensul ultimei operatorului de atribuire, iar în cazul în care partea stângă și dreaptă ale tranzacției este una și aceeași variabilă. În acest caz, prima în celula de memorie intermediară este plasat rezultatul dreptului de exprimare a operatorului de atribuire, iar apoi rezultatul este atribuit variabilei de pe partea stângă.

De exemplu, în cazul în care declarația de atribuire A = A 5, A la atribuire variabilă conținea valoarea 7, după operație va conține valoarea 12 (7 + 5).

  • Puteți atribui orice variabilă numerică (sau expresie) a oricărui alt tip numeric variabil (sau variantă de tip variabilă);
  • În cazul în care atribuie o expresie numerică a unei variabile tastate cu mai puțină precizie (de exemplu, dublu - pe termen lung), expresia VBA runde valoarea pentru a se potrivi cu variabila de precizie, noua valoare a gazdei;
  • Dacă variabila String este atribuit unei variabile de tip Variant, care conține numărul, VBA transformă automat numărul la un șir de caractere.

Operatorul plus (+)

Operatorul plus efectuează un plus de simplu. Ambele operanzi trebuie să fie expresii numerice sau șiruri care VBA pot fi convertite într-un număr. Operatorul plus poate fi de asemenea utilizat pentru a efectua operații aritmetice cu tipul de date Data.

Tipul de date al rezultatului expresiei plus este de obicei același tip cât mai exactă a acestei expresii. Dar există și excepții:

  • Rezultatul adăugării unice și pe termen lung se va dubla;
  • Rezultatul de tip plus curent cu orice alt tip de date va fi întotdeauna Data;
  • Dacă rezultatul depășește intervalul de tip Integer, VBA îl transformă într-un lung;
  • În cazul în care rezultatul este mai mare decât tipurile lung, unică, data, VBA îl transformă într-o cameră dublă;
  • Dacă oricare operand în expresie plus este Null, rezultatul adăugării expresiei va fi, de asemenea, Null.

Rechemare pentru a crește acuratețea tipurilor de date numerice: Byte, Integer, Long, Single, Double, valuta.

Trebuie spus că este necesar să se înțeleagă în mod clar modul în care VBA convertește tipurile de date ca urmare a unor operații aritmetice. Acest lucru va ajuta în viitor, pentru a evita multe erori „inutile“, atunci când scrierea de cod.

Operatorul de scădere (-)

operator de scădere îndeplinește două sarcini: utilizate pentru a scădea un număr de altul; Aceasta denotă un minus unar (acest semn minus, care este plasat înaintea numărului pentru a indica faptul că acesta este un număr negativ). Pune semnul minus unar înainte de o variabilă sau o expresie este același cu numărul care este înmulțit cu -1.

Ambii operanzi în ceea ce privește scăderea trebuie să fie variabile numerice (expresii) sau un șir de caractere care pot fi convertite în număr VBA. Puteți utiliza operatorul de scădere pentru a lucra cu date.

VBA folosește aceleași reguli pentru a determina tipul de date al rezultatului scăderea expresiei care pentru expresii folosind operatorul plus. Dar, sunt add-on:
În cazul în care ambii operanzi într-o expresie sunt de tip Data, atunci rezultatul expresiei va fi de tip dublu.

Operatorul de multiplicare (*)

Operatorul de multiplicare multiplică două numere - rezultatul expresiei de multiplicare este un produs a doi operanzi. Ambii operanzi în termeni de multiplicare sunt expresii numerice sau șiruri care VBA pot fi convertite într-un număr.

VBA urmează aceleași reguli pentru a determina tipul de date rezultat al expresiei de multiplicare ca și pentru expresii folosind operatorul plus. In termeni multiplicatoare toate variabilele sunt Variant, care conțin valori de tip Data, convertite în valori numerice.

Operatorul diviziune (/)

Operatorul efectuează diviziune în virgulă mobilă aritmetică diviziune obișnuită a operanzi lor.

În expresiile divid primul operand este divizat de al doilea operand - rezultatul este un coeficient de divizare.

Ambii operanzi în ceea ce privește împărțirea în virgulă mobilă, trebuie să fie expresii numerice sau șiruri care VBA pot fi convertite într-un număr.

Dacă cel puțin un operand în expresia diviziune este de tip Null, rezultatul diviziunii va fi, de asemenea Null.

Divizia de tip operațiune în virgulă mobilă de date este dublu, cu excepția:

  • Ambele operanzi sunt în ceea ce privește tipul de diviziune Integer sau Single - rezultat unic;
  • Dacă expresia nu overflow intervalul de valori pentru tipul Single.

Diviziunea Integer (\)

Diviziunea Integer diferă de diviziunea în virgulă mobilă, astfel încât rezultatul său este întotdeauna un număr întreg de nici o parte fracționară.

Ambele operanzi în diviziune întreagă a expresiei trebuie să fie expresii numerice sau șiruri care VBA pot fi convertite într-un număr.

Înaintea intervenției chirurgicale de divizare întregi runde VBA fiecare operand la numărul sau tipul lung Integer (de același tip și are rezultatul întreg de divizare).

VBA aruncă (dar nu rotund!), Orice rest fracționară a rezultatului diviziunii întreg al expresiei. De exemplu, expresia 22 \ 5 și 24 \ 5 va avea același rezultat = 4.

Dacă cel puțin un operand într-o expresie diviziune întreg este de tip Null, rezultatul diviziunii va fi, de asemenea Null.

Modulul (Mod)

divizare modulo deoarece completează diviziunea întreg. În expresia modulo returnează numai restul operației de împărțire în ansamblu.
Mod 5 22 = 2
24 Mod = 5 4
25 Mod = 5 0

Celelalte proprietăți sunt diviziune întreg modulo identice.

Exponentiation (^)

Operatorul exponentiation ridică un număr la o putere.

Atât operatorul în ceea ce privește exponentiere trebuie să fie expresii numerice sau șiruri care VBA pot fi convertite la numere.

Operandul din partea stângă a operatorului exponentiation poate fi negativ numai în cazul în care operandul din dreapta este un număr întreg.

Rezultatul expresiei este de tip Double.

Dacă cel puțin un operand în expresia de tip Null, rezultatul exponentiation va fi, de asemenea Null.

Pentru a rezuma cele de mai sus:

operatori matematici VBA