În acest capitol, vom lucra cu funcțiile încorporate. În Access, există aproximativ o sută built-in functii, si este aproape imposibil de a acoperi fiecare dintre ele. În acest capitol ne vom uita la structura de bază, sintaxa, și de a folosi unele dintre cele mai populare funcții, precum și capcanele, astfel încât să puteți merge explora alte caracteristici pe cont propriu.
O funcție este o procedură VBA care efectuează o sarcină sau un calcul și returnează un rezultat. Funcțiile pot fi de obicei utilizate în interogări, dar există și alte locuri pe care le puteți utiliza funcții.
Puteți utiliza funcții în proprietățile tabelului, de exemplu, dacă doriți. pentru a specifica o valoare prestabilită pentru câmpul data / ora, puteți utiliza data sau funcționează acum pentru a apela informații despre data / ora curentă a sistemului, iar această valoare de intrare în mod automat.
De asemenea, puteți utiliza funcții într-o expresie atunci când creați un câmp calculat sau utilizați funcții în interiorul unui formular sau al unui raport de gestiune. Puteți utiliza funcții chiar și în argumentele macro.
Funcțiile pot fi destul de simple, fără a mai fi necesară denumirea altor informații sau pur și simplu să se refere la un câmp dintr-un tabel sau o interogare.
Să analizăm câteva exemple de utilizare a funcțiilor încorporate.
Data și ora funcției
Să înțelegem acum funcțiile datei și timpului -
Funcția Date () este utilizată pentru a returna data curentă a sistemului. Această funcție nu necesită argumente privind funcțiile sau informații suplimentare. Tot ce trebuie să faceți este să scrieți numele funcției și să deschideți și să închideți parantezele.
Există două funcții foarte asemănătoare încorporate Time () și Now ().
Timp () Funcția returnează doar ora curentă a sistemului și Acum () Funcția revine ca dată și dată curente.
În funcție de datele pe care doriți să le urmăriți, stocați sau interogați, aveți trei funcții încorporate, ușor de utilizat, care vă ajută să rezolvați această problemă.
Să deschidem acum baza de date și să creăm o interogare nouă folosind designerul de interogare și să adăugăm tblProjects și tblTasks.
Adăugați Projectname din tblProjects și TaskTitle, StartDate și DueDate din tblTasks și executați interogarea.
Să specificăm acum criteriile din StartDate.
Criteriul începe cu operatorul mai mare decât simbolul. egal cu symbolDate Functiongreater decât simbol. urmat de egal cu simbolul. și apoi funcția Data.
Când executați această interogare, toate sarcinile vor avea loc fie la data curentă, fie în viitor, ca în imaginea de mai jos.
Acesta a fost un exemplu. Cum pot utiliza funcția Date () ca criteriu de interogare.
Să spunem acum că această solicitare ar trebui să fie mai flexibilă în ceea ce privește data la care a fost trasă din această săptămână.
Avem câteva sarcini diferite care au început în această săptămână, care nu sunt afișate în această listă actuală, din cauza criteriilor noastre. El se uită la datele de început care sunt egale astăzi sau mai mari.
Aici vom adăuga câteva informații suplimentare acestor criterii. De fapt, dorim ca acesta să fie mai mare sau egal cu data curentă minus șapte zile.
Dacă tastăm minus șapte și rulați interogarea, puteți vedea sarcinile care au început săptămâna aceasta, de asemenea.
Funcția DateDiff ()
Funcția DateDiff () este o altă funcție populară dată / oră. Funcția DateDiff returnează un Variant (lung). indicând numărul de intervale de timp dintre cele două date specificate. Cu alte cuvinte, acesta calculează diferența dintre două date și veți selecta intervalul prin care funcția calculează această diferență.
Putem calcula vârsta oamenilor prin calcularea diferenței dintre ziua lor de naștere sau ziua de naștere și toată ziua de astăzi.
Vom încerca să folosim funcția DateDiff în noua zonă.
Să numim vârsta urmată de un colon și apoi să scriem o funcție DateDiff.
- Primul argument al funcției pentru intervalul de date DateDiff, introduceți "yyyy".
- Următorul argument al funcției este prima dată, vrem să calculează cu ce, în acest caz, va fi un câmp de Zi de naștere.
- Al treilea argument al funcției este acela al zilei de astăzi.
Format () Funcție
Format () Funcția returnează un șir care conține expresia. formate în conformitate cu instrucțiunile. conținute în expresia de format. Mai jos este o listă de formate definite de utilizator. care poate fi folosit în funcția Format () function.ss
Să revenim acum la întrebarea dvs. și să adăugăm mai multe câmpuri aceleași folosind funcția Format ().
Introduceți formatul funcțiilor. Primul argument pentru această funcție va fi o expresie care poate fi aproape orice. Să facem acum ziua de naștere, ca primul și următorul lucru care ne-a scris formatul. În acest caz, avem nevoie de o lună, o lună, o zi, o zi. Scrieți "MMDD" în ghilimele, apoi executați interogarea.
Acum acceptă data de pe teren pentru ziua de naștere, 4 luni și 17 zile.
Să adăugăm "mmm" și "mmmm" în loc de "MMDD" în următoarele zone, ca în imaginea de mai jos.
Rulați interogarea și veți vedea rezultatele ca în imaginea de mai jos.
În caseta următoare, acesta returnează primele 3 caractere ale numelui lunii pentru acea zi de naștere și în ultimul câmp veți primi numele lunii întregi.
Pentru a vedea luna, urmată de anul de la data nașterii, să adăugăm "yyyy", precum și, după cum se arată în următoarea imagine.
Să reluăm interogarea.
Acum veți vedea o lună, apoi o virgulă și apoi un an.
IIf () Funcție
IIf () Funcția este abrevierea "Immediate If" și această funcție evaluează expresia sau este adevărată. fie falsă. și returnează o valoare pentru fiecare. Ea are până la trei argumente funcționale, toate fiind necesare.
- Primul argument este orice expresie pe care doriți să o evaluați.
- Următorul argument denotă partea adevărată, care poate fi o valoare sau o expresie este returnată dacă prima expresie este adevărată.
- Ultimul argument este ceea ce vrei, se întoarce dacă expresia ta este falsă.
Să luăm un exemplu simplu. Vom crea o interogare nouă folosind designerul de interogare și vom adăuga tabelul tblAuthors și apoi vom adăuga următoarele câmpuri.
Acum puteți vedea că avem trei câmpuri - FirstName, MiddleInitial, LastName și apoi este un câmp cascadă care trage toate cele trei câmpuri împreună. Rulați interogarea pentru a vedea rezultatul acestei interogări.
Acum, puteți vedea rezultatul interogării, dar veți observa, de asemenea, că unele înregistrări nu au inițial de mijloc. De exemplu, înregistrarea Joyce Dyer nu are nici un mijloc inițial, dar în FULLNAME câmp, veți vedea o perioadă care într-adevăr nu are nevoie să fie acolo. Deci, înapoi la Design View. Aici asociem numele în mod diferit utilizând funcția IIf.
Scrieți numele într-un alt câmp și numiți-l FullName1, apoi introduceți funcția IIf.
Primul argument al funcției pentru funcția Imediat Dacă este expresia ta. În expresie vom vedea dacă câmpul patronimic este gol sau zero.
Următorul argument este adevărata parte. Deci, dacă patronimicul este zero, atunci dorim să afișăm LastName și LastName.
Acum, pentru partea noastră falsă - dacă MiddleInitial nu este zero, atunci dorim să afișăm FirstName, MiddleInitial și LastName.
Acum, să începem interogarea dvs. și veți vedea rezultatele, ca în imaginea de mai jos.