Ovim tekst-poljem u jednu liniju smeštamo sadržaj polja [Grad], [Pokrajina] i [Postanski broj]. Ukoliko postoji podatak o pokrajini datog kontakta, pre samog naziva pokrajine ubacuju se zarez i space karakter, a nakon naziva pokrajine dolazi još jedan space karakter. Ukoliko pak, ovaj podatak o pokrajini nije prisutan, nakon učitavanja podatka [Grad] ubacuje se samo prazan karakter. Funkcijom IIf ubacujemo zarez samo onda kada je to potrebno, i stoga osiguravamo praznu liniju ukoliko su sva tri polja prazna.
Nešto složenije rešenje predstavlja korišćenje VBA programskog koda i kreiranje funkcije „KreirajLinije“, koju ćemo detaljnije objasniti. Pri korišćenju ove funkcije biće vam potrebna samo jedna text-box kontrola u koju ćemo smestiti sva polja. Zato će izvor podataka za ovo polje biti:
=Trim(KreirajLinije([Adresa],
[Grad] &
IIf(IsNull([Pokrajina]) Or [Pokrajina]="",
" ", ", " & [Pokrajina] & " ") &
[Postanski broj],
[Drzava]))
Kao što vidite, argument funkcije KreirajLinije() predstavljaju podaci iz pet polja baze podataka, tj. pet stringova (niz stringova), a sama funkcija izgleda ovako:
Public Function KreirajLinije(ParamArray varLinije())
Dim intX As Integer, strRezultat As StringFor intX = 0 To UBound(varLinije)
If Not IsNull(varLinije(intX)) And varLinije(intX) <> ""
Then
strRezultat = strRezultat & varLinije(intX) & vbCrLf
End If
NextKreirajLinije = strReturn
End Function
Funkcija KreirajLinije() automatski vrši konstrukciju linije za svaki od argumenata (polja sloga), i pri tome ignoriše prazna i null polja. Ovim se vrši uklanjanje praznih linija ukoliko podatak u nekom polju nedostaje. Na primer, ukoliko nema adrese, neće ni biti linije sa adresom u izveštaju, a linije koje slede (Grad-Pokrajina-Postanski broj-Drzava) automatski će se pomeriti za jednu liniju gore.
Pratite Krstaricu na www.krstarica.com