Combinarea valorilor textului cu expresii

Când doriți să combinați valori în două sau mai multe câmpuri din Access, creați o expresie cu operatorul ampersand ( ). Să presupunem că aveți formularul Angajați. Introduceți numele și prenumele fiecărui angajat în diferite domenii, dar doriți să afișați numele complet al angajatului în titlul formularului.







Pentru a face acest lucru, utilizați următoarea expresie:

= [Nume] „“ [Nume]

Exprimarea cu un operator combină valorile din câmpurile "Name" și "Last Name". Expresia este prezent de asemenea, o pereche de ghilimele duble ( „), cu un spațiu între ele pentru a împărți numele de spațiu. Dacă doriți să inserați ceva între cele două domenii, cum ar fi spațiu, semne de punctuație sau un text, această valoare suplimentară de inserție trebuie să fie închise în ghilimele.

Ca un alt exemplu, luați în considerare următoarea expresie, în care numele și prenumele sunt separate printr-o virgulă și un spațiu:

= [Nume] "" [Nume]

În acest caz, expresia introduce o virgulă cu un spațiu între numele și prenumele, încadrate în ghilimele.

Următoarea procedură presupune că aveți un formular care se bazează pe un tabel cu câmpurile "Name" și "Last Name". Alternativ, puteți modifica expresia din pasul 6 astfel încât să se potrivească cu datele dvs.

Adăugați un câmp text cu o expresie pentru numele complet

În panoul de navigare, faceți clic cu butonul din dreapta pe formularul sau raportul pe care doriți să îl modificați și selectați Constructor din meniul contextual.

În fila Constructor, în grupul Controale, faceți clic pe Câmp.

Trageți cursorul în formă sau raport pentru a crea un câmp de text.

Faceți clic dreapta pe caseta de text și selectați Proprietăți din meniul de comenzi rapide.







În panoul de proprietăți, faceți clic pe fila Date.

Modificați valoarea proprietății de date la = [Name] „“ [Nume].

Închideți zona proprietăților și salvați modificările.

Uneori, unul dintre câmpurile pe care doriți să le îmbinați nu poate conține o valoare. Această lipsă de date se numește valoarea Null. Dacă aplicați un operator la un câmp care nu contează, Access returnează un șir gol pentru acest câmp. De exemplu, dacă în înregistrarea angajatului există doar un nume de familie, expresia din exemplul anterior returnează un șir de lungime zero pentru câmpul Nume, un spațiu, apoi valoarea din câmpul Nume ultim.

1. Deoarece nu există date în câmpul "Nume", valoarea "Smooth" este precedată de un șir de lungime zero și un spațiu.

Când combinați valorile din mai multe câmpuri într-o linie nouă, este de dorit să includeți valoarea într-o linie nouă (de exemplu, o virgulă), numai dacă un câmp conține date într-un anumit câmp. Pentru a include o valoare condiționată, îmbinați câmpurile utilizând operatorul +. nu operatorul . Să presupunem că aveți un tabel "Client" cu câmpurile "Oraș", "Regiune" și "Cod poștal". Doriți să combinați valorile din aceste câmpuri pentru raport, dar unele intrări pot să nu conțină valori în câmpul "Regiune". Dacă încercați să fuzionați câmpuri utilizând operatorul . veți primi virgule inutile înaintea codului poștal.

Pentru a exclude virgulele inutile, utilizați operatorul plus (+), așa cum se arată în următoarea expresie de exemplu:

= ([Oras] ("," + [Regiune]) „“ [Codul poștal]

Operatorul + combină textul în același mod ca și operator . Cu toate acestea, operatorul + suportă și așa numita propagare Null. Răspândirea valorii Null permite ca Null să fie returnată pentru întreaga expresie dacă cel puțin una dintre componentele sale este Null. În exemplul anterior, luați în considerare partea expresiei ("," + [Regiunea]). Deoarece este utilizat operatorul +. expresia din paranteze interne returnează o virgulă numai dacă câmpul "Regiune" conține o valoare. Dacă nu există nicio valoare în câmpul "Regiune", valoarea Nul se propagă, atunci întreaga expresie din paranteze interioare revine Null, prin aceasta "ascunzându" virgula.

1. Înregistrările care conțin valori pentru regiuni sunt afișate cu o virgulă, un spațiu și un nume abreviat pentru regiune.

2. Pentru Petrozavodsk, regiunea nu este specificată, prin urmare expresia rezultată este afișată fără virgulă, spațiu sau nume abreviat al regiunii.







Trimiteți-le prietenilor: