Funcția Eval

Funcția Eval este utilizată pentru a evalua o expresie care are ca rezultat un șir sau o valoare numerică.

Puteți să compuneți un șir și să îl transmiteți funcției Eval ca și cum ar fi o expresie reală. Funcția Eval evaluează expresia șir și returnează valoarea. De exemplu, Eval ("1 + 1") returnează 2.







Dacă funcția Eval transmite un șir care conține numele unei alte funcții, funcția Eval returnează valoarea returnată de această funcție. De exemplu, Eval ("Chr $ (65)") returnează valoarea "A".

Notă: Exemplele de mai jos arată modul de utilizare a acestei funcții în modulul Visual Basic for Applications (VBA). Pentru mai multe informații despre lucrul cu VBA, selectați referința dezvoltatorului din lista derulantă de lângă câmpul Căutare și introduceți unul sau mai multe cuvinte în câmpul de căutare.

Notă: Dacă specificați numele unei alte funcții din argument la expresia șir a funcției Eval, trebuie să o puneți după paranteze. De exemplu:

Debug.Print Eval ("StrComp (" "Joe", "" joe ", 1)")

Funcția Eval poate fi utilizată într-un control de formă sau raport, precum și într-o macro sau modul. Funcția Eval returnează o valoare Variant de tip șir sau de tip numeric.







Argumentul_expresiv al argumentului trebuie să fie o expresie stocată într-un șir. Dacă funcția Eval trece un șir care conține numai text, mai degrabă decât o expresie numerică sau un nume de funcție, apare o eroare la execuție. De exemplu, executarea funcției Eval ("Smith") va duce la o eroare.

Utilizând funcția Eval, puteți defini valoarea stocată în proprietatea Value a comenzii. În următorul exemplu, un șir este trecut la funcția Eval, care conține o referință completă la control. Caseta de dialog afișează valoarea curentă a comenzii.

Funcția Eval face posibilă utilizarea declarațiilor de expresie care nu sunt valide în modulele Visual Basic for Applications (VBA). De exemplu, în codul de program, nu puteți folosi direct instrucțiunile SQL Between. Și sau In. dar ele pot fi folosite într-o expresie trecută la funcția Eval.

Următorul exemplu determină dacă valoarea controlului ShipRegion în formularul Orders este unul dintre codurile regionale specificate. Dacă câmpul conține una dintre aceste notații, intState va fi setată la True (-1). Rețineți că pentru a include o linie în alta, trebuie să utilizați citare simple (').

Următorul exemplu presupune că există 50 de funcții etichetate A1, A2, etc. Funcția Eval este utilizată pentru apelarea acestor funcții în serie.

Următorul exemplu pornește evenimentul Buton de apăsare. care este echivalentă cu apăsarea butonului în formă. Dacă proprietatea OnClick a unui buton începe cu un semn egal (=), indicând că acesta este un nume de funcție, funcția Eval apelează funcția corespunzătoare. Aceasta este aceeași cu începerea evenimentului. Apăsați butonul. Dacă valoarea proprietății nu începe cu un semn egal, atunci acesta este numele macrocomenzii. O macrocomandă cu numele specificat va fi lansată utilizând metoda RunMacro a DoModro.







Articole similare

Trimiteți-le prietenilor: