Funkcija „Eval“

Važno : Ovaj članak je mašinski preveden, pogledajte odricanje odgovornosti. Pogledajte verziju ovog članka na engleskom jeziku ovde za referencu.

Možete da koristite funkciju Eval se izračunava na izraz čiji je rezultat tekstualna niska ili numerička vrednost.

Možete da napravite nisku, a zatim Dodaj funkcija Eval kao da je niska zapravo izraz. Funkcija Eval procenjuje izraz niske i vraća vrednost. Na primer, Eval("1 + 1") daje 2.

Ako funkcija Eval prosledite niska koja sadrži ime funkcije, funkcija Eval daje povratnu vrednost funkcije. Na primer, Eval("Chr$(65)") daje "A".

Sintaksa

Procena ( izrazniske )

Izrazniske argument je izraz koji daje vrednost alfanumeričke tekstualne niske. Na primer, izrazniske može da bude funkcija koja vraća nisku ili numeričku vrednost. Ili može biti referenca na kontrola na obrascu. Argument izrazniske moraju da se prevedu u niska ili numerička vrednost; Ne mogu da se prevedu u Microsoft Access objekat.

Napomena : Primeri koji slede pokazuju upotrebu ove funkcije u Visual Basic for Applications (VBA) modulu. Ako vam je potrebno više informacija o radu sa VBA modulom, izaberite stavku Referenca razvojnog programera sa padajuće liste pored stavke Pretraga i unesite jedan ili više termina u polje za pretragu.

Napomena : Ako ime funkcije Eval funkciju, morate da uključite zagrade iza imena funkcije u argumentu izrazniske . Na primer:

' ShowNames is user-defined function.
Debug.Print Eval("ShowNames()")

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

Debug.Print Eval("Date()")

Napomene

Možete da koristite funkciju Eval u izračunata kontrola u obrascu ili izveštaju ili u makro ili modul. Funkcija Eval daje na varijantu koja je niska ili numerički tip.

Argumenata izrazniske mora da bude izraz koji se skladišti u niski. Ako funkcija Eval prosledite nisku koja ne sadrži numerički izraz ili ime funkcije, ali samo jednostavne tekstualne niske, greška izazvana tokom izvršavanja dogodi. Na primer, Eval("Smith") vraća grešku.

Funkcija Eval možete da koristite da biste odredili vrednosti uskladištene u svojstvo kontrole . Sledeći primer dodaje niska koja sadrži referencu puna kontrola za funkciju Eval . Zatim prikazuje trenutnu vrednost kontrole u dijalogu.

Dim ctl As Control
Dim strCtl As String
Set ctl = Forms!Employees!LastName
strCtl = "Forms!Employees!LastName"
MsgBox ("The current value of " & ctl.Name & _
" is " & Eval(strCtl))

Funkcija Eval možete da koristite za pristupanje operatorima izraza koji nisu obično dostupni u programu Visual Basic for Applications (VBA) modula. Na primer, ne možete da koristite SQL operatore između... I ili u direktno u kodu, ali ih možete koristiti u izrazu prosleđen funkciji Eval .

Sledeći primer određuje da li vrednost RegionIsporuke kontrolu na obrascu porudžbine jedan od nekoliko navedenih skraćenica za države. Ako polje sadrži nešto skraćenica, intState će biti ispunjen (– 1). Imajte u vidu da koristite jednostruke navodnike (') da biste uključili niske unutar druge niske.

Dim intState As Integer
intState = Eval("Forms!Orders!ShipRegion In " _
& "('AK', 'CA', 'ID', 'WA', 'MT', 'NM', 'OR')")

Primer

U sledećem primeru podrazumeva da imate niz 50 funkcije definisan kao A1, A2 i tako dalje. Ovaj primer koristi funkciju Eval da pozovete svaka funkcija u grupi.

Sub CallSeries()
Dim intI As Integer
For intI = 1 To 50
Eval("A" & intI & "()")
Next intI
End Sub

Sledeći primer pokreće kliknite na događaj kao da je korisnik kliknuo dugmeta na obrascu. Ako vrednost na dugme svojstva OnClick počinje znakom jednakosti (=), oznaиava da je ime funkcije, Eval poziva funkciju, koja je jednaka aktiviranja kliknite na događaj. Ako ne počinje znakom jednakosti, vrednost mora da ime makroa. Metod RunMacro objekta DoCmd pokreće imenovani makro.

Dim ctl As Control
Dim varTemp As Variant
Set ctl = Forms!Contacts!HelpButton
If (Left(ctl.OnClick, 1) = "=") Then
varTemp = Eval(Mid(ctl.OnClick,2))
Else
DoCmd.RunMacro ctl.OnClick
End If

Napomena : Odricanje odgovornosti za mašinski prevod: Ovaj članak je preveo računarski sistem bez ljudske intervencije. Microsoft nudi ove mašinske prevode da bi pomogao korisnicima koji ne govore engleski da uživaju u sadržaju o Microsoft proizvodima, uslugama i tehnologijama. Budući da je članak mašinski preveden, može da sadrži greške u rečniku, sintaksi ili gramatici.

Unapredite veštine
Istražite obuku
Prvi nabavite nove funkcije
Pridružite se Office Insider korisnicima

Da li su vam ove informacije koristile?

Hvala vam na povratnim informacijama!

Hvala za povratne informacije! Zvuči da će biti od pomoći ako vas povežemo sa našim agentima Office podrške.

×