Sunteți pe pagina 1din 44

n timp ce unii din pachetul MS Office folosesc doar MS Word, celelalte aplicaii nu sunt mofturi.

Desigur, MS Word e aplicaia poate cea mai general, i uneori poate fi suficient, dar specializrile celorlalte aplicaii nu pot fi negate. S lum cazul aplicaiei MS Publisher (probabil unii nici nu auzit de ea, iar muli nu au folosit-o): n timp ce i n MS Word poi face pliane i afie, MS Publisher are instrumente tocmai pentru aa ceva. Folosesc de mai bine de zece ani MS Publisher i dat fiind ce fac eu nu a rezista fr acest program. Apoi s zicem c avem ceva liste de cumprturi: i n MS Word le putem administra, dar MS Word nu poate bate MS Excel la capitolul calcul tabelar.

Mergnd mai departe, cine ne-ar opri s facem o prezentare n MS Word, pe foi A4 culcate (landscape, nu potrait), dar ct de primitiv e o astfel de soluie cnd exist MS PowerPoint! i n fine, ajungem i la subiectul nostru: poi s pstrezi de exemplu fiele angajailor ntr-un document Word, dar doar cnd le ai ntr-o baz de date simi c poi lucra cu ele rapid i adevrat. ns ce sunt bazele de date? Eh, am avut un curs la facultate, dar asta s-a ntmplat cu prea muli ani n urm. Nu tiu s v dau o definiie de dicionar, nici nu alerg fugua la Wikipedia, ci am s v spun c reprezint un mod de depozitareinteligent a unei serii de informaii. S zicem c avem ce exemplu s lum? o bibliotec. Dac o punem ntr-o baz de date i doar dac o punem ntr-o baz de date regsirea unei informaii va fi mai rapid (pentru c bazele de date au nite indeci ce fac rapid cutarea), dar i generarea a diverse rapoarte: n cteva secunde poi avea lista crilor a cror autor e Xulescu Yon; sau cu crile Editurii Z; sau o list cu crile grupate pe anii de apariie. Toate acestea sunt floare la ureche cu MS Access (sau aplicaii similare). n cele din urm o baz de date poate fi comparat cu un tabel de fapt cu o serie de tabele, pentru c o baz de date poate conine mai multe entiti. De exemplu la o baz de date cu biblioteca vom putea avea mai multe tabele: tabela Cri, tabela Autori, tabela Edituri S ncercm s ne acomodm cu unii termeni. Mai jos avem o tabel intitulat Persoane (ea poate singur s formeze o baz de date sau mpreun cu altele). O tabel are o serie de cmpuri (n englez fields): sunt numele coloanelor. O linie de informaii se numete nregistrare (n englez record). Ceea ce vedei mai jos e realizat n MS Word doar de dragul capturii cu explicaii. i chiar i n MS Word putem face rapid sortri cu ceva atenie dar vom vedea pe parcurs de ce merit n MS Access.

Mai jos vedei un scurt screencast n care am ilustrat crearea unei baze de date cu o tabel. Personal nu creez aa cum vedei mai jos prezentarea . Dup ce am deschis un fiier nou comut pe modul Design View caz n care deja trebuie s salvez tabela i acolo pictez structura. Dar acum fac linite pn vedei

Gata? Dup cum spuneam, ce mai bun mod de a defini cmpurile unei baze de date este n Design

View ca n captura de mai jos. Observai mai jos cmpurile, n coloana Field Name. n timp ce MS
Access v las s avei nume de cmpuri i cu diacritice, dar i cu spaii sau alte semne, e recomandabil s nu le folosii (mai ales dac la un moment dat vei dori migrarea acestor date, s zicem spre MySQL). De aceea un cmp data naterii e bine s fie notat DataNasterii. Un cmp numrul de la maina de serviciu ar trebui s devin NumarulDeLaMasinaDeServiciu, sau mai bine NumarMasinaServiciu. Dar e doar o sugestie. Dup ce ai stabilit numele unui cmp trebuie s spunei i ce fel de cmp e.

S o lum sistematic. Cele mai populare tipuri sunt: numeric util pentru identificatori (ID-uri, vom vedea mai ncolo) dar i orice cmp ce se preteaz la aa ceva: numr copii; greutate; numr la strad sau numr apartament; numr de produse text util la nume, prenume, localitate, funcie, produs, etichete memo e un cmp text mai mare, util de exemplu la biografia unei persoane sau descrierea unui produs dat/timp util pentru date de natere, date de expediie, orice date, dar i timpi (ex: ora de livrare) Mai sunt i altele vedei lista derulant din captura de mai sus dar nu foarte des folosite. De exemplu da/nu (Yes/No) e util pentru un cmp gen: sex (bifat fiind de exemplu masculin, nebifant feminin). Tabela de mai sus folosete tipul AutoNumber, care de regul se regsete sau ar trebui s se regseasc n fiecare tabel, la identificator. Ce este identificatorul? E un numr care identific unic o nregistrare. De aceea e auto, c el se incrementeaz singur. Nu putem s avem dou nregistrri cu acelai ID. Aceti identificatori, n timp ce pot s lipseasc, sunt n 99% din cazuri necesari. S zicem c avem o baz de date de persoane, ca mai sus. Pot s fie, normal, doi-trei Ion Popescu! Dup ID ns i putem diferenia fr probleme. Ca observaie, la cmpul de identificare nu e musai s i se spun ID. Poate fi i ABC . Dar de regul se pune ID sau combinat gen ID_marfa, ID_cumparator i acum o scurt recapitulare: 1. cnd avem date structurate (gen: fi persoane, fi carte, fi produs) e util s apelm la MS Access n loc la MS Word 2. primul pas e s gndim stuctura bazei noastre de date, fie pe o hrtie, fie direct pe calculator

3. i vom ncepe gndindu-ne cte tabele sunt necesare ele sunt de regul tot attea cte entiti avem: de exemplu o baz de date a colii va avea o tabel pentru elevi i o alta pentru profesori, pentru c sunt entiti diferite (plus alte tabele pentru materii, sli de clar .a.) 4. apoi la o tabel ne vom gndi la ce cmpuri sunt necesare, le vom boteza i asocia un tip fiecrui cmp 5. la final putem s trecem n Datasheet View dai de exemplu click pe fila Home i va fi n lista primului buton i s populm tabela cu date

Evident, vom merge i mai departe, n articolele urmtoare. Probabil o s ntrzie puin, i oricum ncercm s le mai alternm pentru a nu plictisi. n plus garantez c mai ncolo cei care tiu ABC-ul MS Access-ului dar nu sunt deja guru la acest capitol vor afla lucruri interesante. i pentru cei interesai iat i baza de date folosit spre exemplificare: ca fiier ACCDB pentru versiunile 2007 i 2010, dar i MDB pentru versiunile anterioare aici.

MS Access: Configurri la tabele


radu.capan 10 August 2010 Office 0 comentarii 140 afiri Taguri: Invatam MS Access, MS Access

De fapt titlul corect ar fi configurri la cmpurile tabelelor. Pornim deci de la premisa c am avem o tabel i suntem n Design View. Cnd dm click pe un anumit cmp vom vedea sub el o serie de setri pe care de regul le putem ignora dar adesea prind bine. De exemplu s zicem c avem un cmp (fie el text sau numeric) n care n 90% din cazuri e o anumit valoare (de exemplu un cmp ar, cel mai adesea fiind Romnia). De ce s scriem de fiecare dat cnd putem pune ca Default Value valoarea dorit, i ea va apare precompletat: dac trebuie trecut o alt valoare, o vom trece, dar exist o valoare implicit. Observai mai jos, la greutate am pus Default Value ca fiind 50.

Interesant i complex e c putem defini reguli de validare. Eu am pus ceva banal: greutatea s fie sub 150 (de kilograme). Dac aceast regul de validare e nclcat, respectivul cmp nu poate fi completat i trebuie introdus o alt valoare, ce respect regula. n plus se emite mesajul de eroare. Vedei mai jos cnd am ncercat s i pun 152 de kilograme la Popescu Mircea. Se pot concepe tot felul de reguli, i dac dai click n cmpul Validation Rule n dreapta de tot vei avea trei puncte de unde putei ajunge la Expression Builder, cu acces la funciile MS Access (putei crea de exemplu o regul ca data naterii s fie dup 01.01.1940 dar nainte de 31.12.2009). Repet: aceste reguli foreaz ca n tabel s nu fie introduse valori nedorite.

n funcie de tipul de cmp evident la opiunile din tabul General vezi prima captur din articol vor fi diverse modificri. Util este de exemplu, n cazul unui cmp text pe care l dorii obligatoriu completat s punei Required pe Yes i Allow Zero Lengthpe No. Dar i tabul Lookup ascunde lucruri interesante. S lum cmpul naionalitate: cel mai adesea va avea una dintre valorile romn, maghiar, german. n tabul Lookup schimbm Display Control de la Text Box la List Box. Apoi n linia cu Row Source

Type alegem Value List. n fine, la Row Source putem scrie direct lista, ntre ghilimele, separat de punct

i virgul, sau dm click pe cele trei puncte de la finalul liniei i vom avea ceva ca n captura de mai jos (cte o intrare pe linie).

i acum s vedem ce am rezolvat! Cnd vrem s scriem o nregistrare nou vedem c la greutate e precompletat 50, iar la naionalitate avem o list cu valorile indicate de noi. Ajunge s scriem r i se va autocompleta cu romn. Ei bine, cnd ai de scris sute de nregistrri, astfel de economii se simt.

Vrei s ncercm ceva i mai complex? Bravo pentru curaj. S mai adugm o baz de date (era deja prezent n ultima arhiv dat) cu cteva localiti. O vedei mai jos.

Acum s adugm cmpul localitate. Dac tot avem o tabel cu localitile, am vrea s profitm de ea, s ne scuteasc de tastat. De aceea n tabul Lookup vom pune tot pe List Box la Display Control; la Row

Source Type vom alege ns Table/Query. Dup care a se vedea captura dm click pe cele trei
puncte i intrm ntr-o zon strin pentru moment, dar care ne va deveni familiar n timp.

Vom fi invitai s alegem dintre tabelele existente. Selectm Localitati i dm click pe Add. Apoi pe Close. Apoi n partea de jos, la Field alegem Nume; deja la Table apare Localitati; i ar prinde bine la Sort s punem Ascending. Att. Acum privii n bara de sus, unde e un buton Close i la ntrebarea ce va apare dai Yes.

Hehe! Tocmai ai fcut o interogare SQL!!! Ar trebui s avei ceva ca mai jos. Despre SQL vom mai vorbi mai ncolo.

Acum cnd mergem n modul Datasheet View s completm tabela, la Localitate vom avea din nou o list din care foarte uor putem alege o localitate; sau scriem primele litere i se va face autocompletare. Important: n ambele cazuri (cel cu naionalitatea, de mai sus, sau acesta cu localitate), nimic nu ne mpiedic s scriem chinez sau New York (valori ce nu apar n listele de autocompletare).

Cam att pentru moment. Nu v grbii ci studiai ce se poate face la capitolul tabele i opiuni de configurare. Mine vom vedea cum putem folosi datele din MS Access tocmai n MS Word. A! Fiierul actual de teste l gsii aici.

MS Access: Sortri i filtre la tabele


radu.capan 10 August 2010 Office 0 comentarii 171 afiri Taguri: Invatam MS Access, MS Access

Mergem mai departe. Dar nu nainte de o mrturisire: scriu aceste materiale offline, departe de cas, iar ele vor fi publicate cu ceva ntrziere, de cteva zile. Scriind offline nici screencast-uri nu vor fi (dect dac voi completa cnd m voi ntoarce acas). Cum sunt fr internet, mi-e mai uor s scriu despre MS Access dect despre situri sau orice cere acces la internet. Mergem deci mai departe cu tabelele din MS Access. Baza de date de ieri am completat-o cu informaii, aa c am acum 30 de nregistrri. i cmpuri i-am mai adugat: un cmp legal de sex i altul de naionalitate. Acum s ne obinuim puin (mai mult) cu interfaa.

Un click dreapta pe numele unui cmp (cap de coloan) ne va da un meniu ca mai sus. Primele opiuni sunt de sortare, alfabetic/invers alfabetic pe un cmp text, cresctoare/descresctoare pe un cmp numeric, cronologic/invers cronologic pe un cmp dat/timp. Acelai lucru l obinem, dac suntem ntrun anumit cmp dnd click pe butoanele Ascending saDescending aflate deasupra (tabul Home). Astfel ntr-o secund liste lungi (pot fi mii de nregistrri) pot fi sortate cum dorim. Din meniul contextual de mai

sus s mai reinem o opiune util: ascunderea unor cmpuri. La un moment dat, dintr-o tabel cu 20 de cmpuri, poate dorim s lucrm doar pe 3 cmpuri. Cel mai simplu este s le ascundem pe celelalte, ca s nu tot dm taburi la nesfrit pn ajungem la cmpurile dorite. Cu Hide Fields ascundem cmpul selectat/curent, dar dac vrem s ascundem mai multe, mai bine dm click pe Unhide Fields i apoi demarcm ce nu ne intereseaz (automat se vor reflecta schimbrile). Dar mai interesant e dac dm click pe sgeata neagr de lng numele unui cmp. Regsim opiunile de sortare, dar apoi ntr-o list cu defilare avem trecute valorile distincte existente (iar n faa lor Select

All i Blanks acesta din urm permite selectarea doar a nregistrrilor care au gol acel cmp). De ce
valorile distincte? Ca s ne ajute . De exemplu eu n lista cu defilare am doi Munteni (numele nu se vede n captur). Dac debifez toate i selectez Muntean, toat tabela se va reduce la nregistrrile celor doi Munteni. Hei, asta a fost rapid! Super rapid! i nu e totul! Vedei meniul Text Filters care are mai multe opiuni? Pot alege Begins With i s scriu M n fereastra ce apare, i imediat tabela va rmne doar cu persoanele ale cror Nume ncepe cu M. Alte idei? De exemplu mergnd pe Prenume pot n dou secunde s am lista celor pe care i cheam Andrei, sau Ioan sau ce mai vreau eu.

Evident, pentru cmp dat nu va fi Text Filters ci Date Filters, cu opiuni specifice (de exemplu datele nainte de o anumit dat; sau de la All Dates In Period poi foarte uor alege toate datele din luna septembrie), iar pentru cmp numeric va fiNumber Filters, iari cu opiuni specifice (rapid putem selecta cine are greutatea peste 60; sau ntre 20 i 40).

Lucrul cu aceste filtre poate face minuni. Mai ales cnd ai sute sau mii de nregistrri. nchei cu o captur ce arat o alt filtrare: la cmpul sex am pus s filtreze doar nregistrrile cu True (adic sex masculin). Imediat tabelul s-a restrns la persoanele de sex masculin. Dac vrem s renunm la un filtru (acesta ascunde nu terge valorile ce nu respect filtrul) cel mai simplu este s dm click pe Toggle

Filter. Dac acest buton apare ca apsat (respectiv galben, conform capturii de mai sus) nseamn c n tabel e probabil s nu fie afiate toate valorile, ci doar cele ce corespund unui filtru. Anulai filtrul (click peToggle Filter) i vei fi siguri c ce vedei e ntreg tabelul.

Facilitile descrise aici, dei ilustrate cu MS Access 2010, au fost introduse ncepnd cu MS Access 2007. Dac dorii s testai cele descrise, v invit s descrcai versiunea actual a bazei de date ce o folosim ca exemplu. De aici. PS: Poate unii srii deja nainte cu expectanele cum pot face s selectez toate persoanele ale cror nume ncepe cu A, au sub 50 de kilograme i sunt nscute n februarie? MS Access v permite i aa ceva (deci combinri de filtre) dar vom vedea cum anume mai ncolo, ntr-un alt articol (nu, nu urmtorul). PS2: Vai mie am mai tratat subiectul aici, iar Microsoft l detaliaz n romn aici.

MS Access: Importarea datelor n MS Word (I)


radu.capan 11 August 2010 Office 0 comentarii 109 afiri Taguri: Invatam MS Access, MS Access, MS Word

Nu va fi un articol n dou pri ci dou abordri diferite, fiecare util n felul ei. Deja aici practic rup firul articolelor pentru nceptori, ncreztor c puini dintre cei care folosesc MS Word i MS Access tiu cum se pot combina cu succes. Deci: nu tii cum? Vom vedea mpreun! i vom ncepe cu un pas necesar dar obscur: MS Word 2007 i 2010 au reuit s ascund foarte-foarte bine procedura inserrii unei baze de date n MS Word. Mergei n Options (cu Alt+F, T) i acolo cutai Quick Access Toolbar. Alegei All

Commands n lista de sub Choose commands from. Vei gsi undeva (sunt alfabetic ordonate) comanda Insert Database. Selectai-o i dai Add.

Am pregtit astfel terenul. Apare un nou buton n Quick Access Toolbar. Click pe el i apare o fereastr ca mai jos, cu un butonGet Data Acesta ne invit s frunzrim HDD-ul dup fiierul MS Access dorit.

Dac fiierul MS Access cuprinde mai multe tabele, vom fi invitai s alegem una. Eu de exemplu aleg Localitati.

Ne apare o fereastr ca mai jos-stnga, cu dou butoane foarte importante pentru opiuni: Query

Options i Table AutoFormat. Despre primul vorbim mai jos; al doilea n schimb e simplu de explicat
ofer o serie de modele pentru afiarea tabelei MS Access ca tabel n MS Word. Nu setm nimic acum c suntem grbii i dm click pe Insert Data i aici (vezi fereastra jos-dreapta) avem ceva important: Insert data as field. Dar nu bifm. i apsm OK i gata.

Tot acest proces, de cteva clickuri, ce ne-a adus? Tabela din MS Access n MS Word. Vei spune mare brnz. Asta pentru c nu am explorat opiunile existente.

i s ncepem de la coad la cap. V amintii de bifarea la Insert data as field? Reluai procesul, bifai acolo acest cmp i dai OK. Pare aceeai Mrie cu alt plrie: acum datele apar pe un fundal gri. Mutai cursorul n afara tabelului i va dispare acel gri. Exist ns o diferen fundamental. Dac n primul caz au fost introduse valorile din baza de date, n al doilea caz au fost introduse valorile legate la baza de date original. Ce nseamn aceasta? Mergei n MS Access, modificai ceva valori, salvai, dup care n fiierul MS Word mergei cu cursorul undeva unde sunt datele din tabel (indicatorul vizual va fi re-apariia fundalului gri). Apsai F9 (sau click-dreapta, Update field) i vei vedea modificrile fcute n MS Access propagate n MS Word!!! A doua chestiune tare (ce pcate c la combinarea celor dou chestiuni tari cel puin n testele mele au aprut probleme) vine de la butonul Query Options, neexplorat pn acum de noi. Va apare o fereastr cu trei taburi. S le vedem pe rnd (am reluat procesul, acum cu tabela Persoane). Primul permite nite filtrri destul de puternice. Spun doar destul de puternice pentru c n primul rnd aceste filtre nu difereniaz cmpurile de tip text, numr, dat sau altele. n fine. Am ales s pun un filtru Greutatea >= 40.

Al doilea tab permite sortri: am dat sortare dup nume i prenume.

n fine, ultimul tab ar fi superb dac ar i merge: permite s alegi doar anumite cmpuri, nu toate. n testele mele setrile de aici au fost ignorate, dar poate n alte combinaii de Windows+MS Office va merge.

Drept urmare am obinut un tabel cu persoanele care au greutatea peste 40 de kilograme (mai mare sau egal), ordonate alfabetic dup nume. Din pcate: data naterii a venit n format american (lun, zi, an), i a sosit i cmpul ce l-am eliminat n tabul al treilea (mai sus). n rest treaba merge destul de bine. Repet: dup configurarea unor setri n Query Options nu mi-a mai mers bifarea la Insert data as field. Buguri locale sau generale nu pot s spun, rmne s testai.

Cert este c exist metode de a fructifica tabelele din MS Access chiar n MS Word, inclusiv cu nite minifaciliti de filtre i sortri. Vestea bun este c limitrile de la filtre i sortri pot fi depite lejer!!! cu interogri n MS Access, care apoi s fie importate n MS Word (chiar i chestia cu eliminarea unor cmpuri se face lejer printr-o interogare). Da, n lista de tabele la importul n MS Word vor figura i interogri (queries) dac exist. Despre ce sunt acelea vom vorbi ns alt dat. Acum e timpul s vedem a doua modalitate de integrare MS Access MS Word.

MS Access: Importarea datelor n MS Word (II)


radu.capan 11 August 2010 Office 3 comentarii 109 afiri Taguri: Invatam MS Access, MS Access, MS Word

Acum nu continum articolul anterior. E vorba pur i simplu de o alt metod, nici mcar similar. Cele dou metode se aplic n scenarii diferite. E simpl i genial. Dac facei munc de birou, lucrnd cu MS Word i MS Access, o s v plac la nebunie. La baz e o facilitate MS Word gndit pentru plicuri: dac ai persoanele, cu adresele lor, ntr-o baz de date, de ce s nu le poi folosi uor n MS Word pentru a tipri plicuri ctre aceste persoane. Ei bine, s depim limita plicurilor. n tabul Mailings, la Select

Recipients alegei Use Existing List Vei fi invitat s frunzrii HDD-ul i facei-o cutnd i indicnd o
baz de date MS Access. Evident eu folosesc exemplul ncetenit deja.

Pare c nimic nu s-a ntmplat. Greit! S-a ntmplat tot ce vroiam

. Exagerez. Avem ns deja acces

la cmpurile din baza de date, pe care s le inserm n MS Word. Scriem un text i acolo unde ne-ar trebui un cmp din baza de date apelm la butonul Insert Merge Field. Acolo vom regsi toate cmpurile. Mai jos vedei c am scris Fia angajatului apoi am inserat cmpul Nume (care apare ca Nume), pot pune prenumele i merge mai departe

E important s reinem c se pot face i construcii mai complicate. De exemplu cmpul sex la noi e True pentru brbai i False pentru femei. Ca s nu afiez Este de sex True am pus o regul (vedei la Rules) de genul IfThenElse Acolo am ales cmpul Sex i am zis c dac e egal cu (Equal to) false, atunci s insereze textul feminin, altfel textul masculin. Similar am pus o regul care s atrag atenia dac angajatul are peste 70 de kilograme.

Ce a ieit? Ceva foarte simpatic. Apsm butonul Preview Results din acelai tab Mailings i cmpurile vor fi imediat nlocuite cu valorile din baza de date!!! Aud un uau?

Plimbarea printre nregistrrile din tabel se poate face cu controalele de deasupra la Find Recipient, din dreapta la Preview Results. Am trecut la a doua nregistrare i observai cum s-a schimbat numele, localitatea, sexul, ba chiar i observaia.

Gndii-v astfel o baz de date cu personalul, cu produse, cu proiecte, cu cri (i altele) ce uor poate deveni un frumos raport n MS Word. Desigur, i MS Access are o facilitate numit rapoarte i vom vorbi despre ea dar sunt contexte n care folosirea MS Word e mai potrivit. Cu sperana c v-am adus ceva nouti nchei pe ziua de azi cu articolele despre MS Access. Mine probabil ar trebui s trecem la formulare. Adic din nou pentru nceptori n special.

MS Access: Crearea formularelor


radu.capan 13 August 2010 Office 0 comentarii 223 afiri Taguri: Invatam MS Access, MS Access

Continum incursiunea noastr n spaiul MS Access, meninnd dublul obiectiv: cei ce nu au folosit pn acum acest program din pachetul MS Office s aib nite noiuni pentru a face primul pas; iar cei care cunosc deja ceva despre MS Access s afle i ceva lucruri noi. Acest articol se adreseaz ns nceptorilor. i vom ncepe prin a vorbi despre tabul Create, care ne indic n rezumat ce poate MS Access. La nceput sunt butoanele pentru crearea de tabele. Deja am vorbit despre aa ceva. Apoi vin interogrile (Queries), formularele (Forms) i rapoartele (Reports). Pe scurt: interogrile sunt un fel de selecii din tabelele existente, formularele sunt fee mai elegante pentru introducerea datelor, iar rapoartele sunt fee mai elegente pentru expunerea datelor.

Dac avem o baz de date foarte-foarte simpl, un tabel ne-ar putea fi de ajuns. La urma urmelor un tabel permite n modulDatasheet View s introducem, tergem, modificm nregistrri. De asemenea ne

arat datele existente. i totui adesea vom dori mai mult, i atunci intervin formularele i rapoartele. S ne oprim astzi la formulare. Ele sunt un fel de ferestre de introducere a datelor n tabele. Facei mental separarea: tabela e una (e s zicem sacul de date), iar formularul e altceva (e s zicem gura sacului). Prin formular turnm (dar nu doar adugm ci putem i terge i modifica) informaii n tabele existente. Formularul presupune deci c tabela exist. Formularul e att de strns legat de o tabel nct MS Access face ceva trznet de simplu: selectai o tabel (bara lateral-stnga) i dai click pe butonul Form din tabul Create.

Mai dai nc un click n tabul Home, primul buton, pentru a alege Form View. n total un chinuitor i lung drum de trei clickuri. Att v-a trebuit ca s creai un formular asociat unei tabele. MS Access i-a toate cmpurile din tabel i le aeaz pe coloane, folosind numele cmpurilor ca etichete lng cmpul editabil. Ca o observaie de importan secundar, cnd lucrai la o tabel, n Design View, selectnd un cmp n partea jos n tabul General putei trece la Caption un text care s fie folosit apoi automat pentru etichet. Astfel, dac la Caption scriem Data naterii, eticheta n formular nu va mai fi numele cmpului, adicDataNasterii, ci tocmai Data naterii.

Tot pentru nceptori o alternativ util este Form Wizard. Acest vrjitor ncepe prin a ne permite s alegem tabela (sau interogarea) pe baza creia s crem formularul. S zicem n cazul nostru tabela Persoane. n lista Available Fields apar toate cmpurile disponibile. Dac dorim ca toate s ajung n formular apsm al doilea buton (cu >>) i gata. Dar s zicem c ne intereseaz n formular doar anumite cmpuri: le-am selectat, am dat click pe primul buton din coloana din mijloc (cel cu >) i acelea au aprut imediat n Selected Fields (disprnd desigur din Available Fields). n pasul urmtor (dm deci click pe Next) putem alege ntre patru moduri: Columnar, Tabular, Datasheet i Justified.

Am ales Justified aa c am obinut rapid urmtorul formular.

Desigur, se poate porni i de la un formular gol, de la pnza goal pe care s pictm dup bunul plac. Acest mod va prezenta ns interes mai ncolo, cnd nu vei mai fi satisfcui de ceea ce MS Access poate crea automat la capitolul formulare. Un formular gol este evident gol vrem i tragem cu mouse-ul cmpurile pe care le dorim. . n lateral click pe Add

Existing Fields din tabul Design, dac e cazul vom vedea tabelele i cmpurile lor. Alegem ce tabel

Iat cum arat formularul pe care l-am creat de la zero. Am tras cu mouse-ul cmpurile dorite, din tabul design am inserat i o imagine, am apsat butoanele Title, i am scris textul Formularul meu!, i Logo indicnd apoi o imagine ce apare n stnga textului tocmai menionat Cteva secunde pentru un formular simplu i frumuel.

Desigur, abia am zgriat suprafaa temei formularelor din MS Access. Urmeaz s vedem lucruri puin mai avansate. Totui, nainte s nchei s spun ceva ce e totui evident: plimbarea printre nregistrrile tabelei se face cu sgeile din bara de sub formular. De la un cmp la altul se trece cu tasta tab, iar cnd am modificat un cmp i am dat tab modificarea e deja salvat! Deci atenie cum apsai tastele. Ajunge s dai din greeal delete i apoi tab i informaia din respectivul cmp e tears.

MS Access: Configurri la formulare


radu.capan 14 August 2010 Office 0 comentarii 170 afiri Taguri: Invatam MS Access, MS Access

n materialul anterior am vzut c MS Access poate din doar cteva clickuri s creeze un formular asociat unui tabel existent. Desigur, pe ici pe colo probabil vom mai dori mici modificri, iar adevrul este c MS Access ofer spaiu de mari, imense modificri. Ba poi am vzut data trecut s porneti chiar de la zero i s pui n formular ce vrei, unde vrei, cum vrei. S vedem puin, n modul Design View, zonele mai importante. Mai nti n tabul Design avem o prim regiune (1) unde sunt controalele (Controls) ce pot fi inserate n formular. Cel mai adesea vor fi folosite controlul tip text (i textarea), combobox (list derulant), butoane radio i de bifare, i evident etichete pentru cmpuri ( Labels). Uneori vom dori gruparea cmpurilor, poate chiar punerea pe file, sau s tragem linii, inserm imagini, chiar i grafice, altele

O a doua zon important e tot n tabul Design, dar mai spre dreapta, regiunea 2. Acolo avem mai nti Add Existing Files, foarte util pentru a trage (drag & drop) cmpurile de care avem nevoie. Foarte util e Property Sheet (se vede n regiunea 4). n fine, pnza de pictat formularul e n regiunea 3. Problema e c sunt foarte multe lucruri de spus i imposibil s acoperim aici totul. Aa c voi lua cteva elemente, sper eu mai semnificative, iar Dvs va trebui s testai mai departe. i primul lucru pe care trebuie s l reinem este c fiecare element al formularului are anumite proprieti. Cnd e activ un element, vedem (dac am dat click pe Property Sheet) proprietile lui. Un mic secret: dac vrei proprietile formularului (nu a unui element din formular) dai click unde indic mai sus sgeata.

Am luat un element din formular i s vedem n vitez cte ceva despre proprieti. n primul rnd ele sunt grupate pe patru taburi, al cincelea reunind toi parametrii din cele patru. 1. Format: evident este pentru formatarea elementelor. Putem de aici configura cum s arate, adic aliniere, margini, tip i efecte font Multe dintre acestea le vom face mai elegant (sau mai a la MS Word) din tabul Format. O proprietate de reinut este Visible: cnd un control (amintesc c la generarea automat sunt puse i cmpurile nedorite de noi, gen ID nu are sens s fie editabil) se vrea ascuns se pune pe No acest parametru. 2. Data: aici avem proprietile valorii controlului. Adic cine d valoarea (n Control Source putem alege un cmp dintre cele ce le are tabela curent), mti, valori implicite, reguli de validare (da, da, acestea pot fi definite i n etapa de elaborare a tabelei) i altele. Din nou: un cmp nedorit, dar care vrem s fie totui vizibil, nu i editabil, e bine ca la Enabled s fie pus pe No (sau la Locked pe Yes vedei practic diferenele pentru a alege). 3. Event: intrm pe un teren mai avansat. Cert e c se pot defini aciuni pentru diverse evenimente. Un exemplu clasic: dac punem un buton ce s se ntmple la click pe buton. Dar poate fi i un eveniment declanat de ieirea dintr-un control (ex: validarea celor introduse). 4. Other: e seciunea diverse. Avem aici unele elemente de cosmetic gen tooltip cnd se ine mouse-ul peste un cmp (poate sluji ca text de ajutor, explicativ); acelai lucru poate fi pus i n statusbar. Foarte important este Tab Stop (uneori vom dori ca anumite cmpuri s fie editabile, dar s se sar peste ele cnd se d tab, tab, tab) i Tab Index. Evident c elementele (controalele) dintr-un formular vor fi parcurse ntr-o ordine cnd se d tab, tab, tab Cnd ai pe coloane elementele i le-ai mai schimbat ordinea, ordinea cu taburile devine varz. Cel mai bine e din regiunea 2 s folosim butonul Tab Order. Dac vei ncerca s punei controalele unde dorii Dvs s-ar putea s sesizai nite limitri, datorit unei alinieri invizibile. Nici o problem: mergei n tabul Arrange i dai click pe butonul Remove Layout. Dar s tii c layout-ul poate prinde bine. Sunt acolo diverse instrumente (acest layout e n principiu ca un tabel, cu linii i coloane) care s ajute la aliniere (plcut ochiului) dar fr s v ncurce/restricioneze n micri.

Configurri legate de un element din formular se pot face reinei, n Design View i cu clasicul clickdreapta. De exemplu la formularul nostru creat automat nu mi place c la naionalitate e o list pe care eu a dori-o transformat n combobox. Click dreapta, Change To, apoi Combo Box i gata.

Vedei mai jos cum arat acum cmpul Naionalitate, spre deosebire de Localitate (la care i se poate aplica acelai truc). De asemenea observai c la cmpul ID am pus la Enabled desigur No.

Tentaia e mare s trec la alte lucruri, foarte frumoase legat de formulare, dar cel mai bine e s luai acum o baz de date poate fi a noastr de teste i s v tot jucai cu parametrii (c sunt muli, dar la urma urmelor doar o mn sunt foarte utili pentru moment) ca s simii mai bine funcionarea formularelor. Aa c mai multe ntr-un alt articol.

MS Access: Din nou la tabele poate lucruri netiute


radu.capan 16 August 2010 Office 0 comentarii 252 afiri Taguri: Invatam MS Access, MS Access

Sptmna trecut ncheiam un articol ndemnndu-v s studiai ce opiuni de configurare sunt pe la tabele. (Desigur, m adresez cercului limitat de cititori interesai de MS Access.) Astzi mi propun s v prezint cteva lucruri pe care a paria c muli nu le cunosc. Mai exact vom vorbi despre formatri,

despre mti, despre totaluri i despre cmpuri calculate. Uau, lista e lung aa c s ne grbim pn nu ne biruie plictiseala. M atept de exemplu c ai vzut opiunile din tabul General pentru Format. C e numr sau dat gsim nite setri utile, dup cum se vede din captura de mai jos. Dar exist mult mai multe setri posibile.

De fapt att de multe nct ne putem prinde urechile. Situl Microsoft are o pagin n limba romn unde le explic: Formatarea datelor din tabele. Eu am s v spun doar o opiune ce mie mi place foarte mult: <. Corect: dac punei aa ceva ca valoare laFormat MS Access va fora litere mici pe acel cmp (text). Nu e cool? Imaginai-v c avei un cmp pentru email: oricine ar completa baza de date, i de le-ar scrie CU CAPS, adresele de email vor fi salvate tot cu litere mici. Mai vrei un truc? Iat altul util: dd mmm. Aceste caractere puse ca formatare pentru un cmp dat vor face ca acel cmp s preia doar ziua i luna, atunci cnd anul nu v intereseaz (gen tabel cu aniversri). Hehe i cte nu mai sunt! Doar jonglnd la formatare. n completare vine puterea mtilor. S zicem c am un cmp cu telefonul productorului: nu e enervant cnd la scriere se scap o cifr la telefon? E exasperant chiar! Problema se rezolv cu o masc. Dai click pe cele trei puncte de la dreapta deInpus Mask. Va apare un vrjitor ce are cteva mti des folosite, dar care nu ne limiteaz: putem s ne definim propriile mti. S mergem ns pe prima variant: Numr

de telefon. Dm apoi Next i n pasul urmtor vedem masca: !(999) 00 00 00. Doar c noi i n loc de 9
(poate fi pus o cifr) vom pune tot 0 (trebuie pus o cifr), i schimbm masca n !0000-000.000 (c aa mi place mie s arate un numr de telefon). Cum prima cifr e mereu zero mai bine punem masca !0000-000.000.

Ia privii cum arat acum cmpul pentru telefon cnd ncercm s l completm! Ne constrnge s respectm masca. Nu poi uita acum o cifr. Nu poi dect completa n formatul gen 0712-345678. Extraordinar! i formatul i restriciile se respect i n formulare, fr s mai lucrm ceva. Ba chiar i n rapoarte! Da, de aceea e bine s zbovim la configurarea tabelelor, pentru c ne scutete de munc mai apoi. Credei-m.

Am terminat dou din patru subiecte. Gonim spre calculatorul ce mie mi seamn cumva cu Excel. Avem deci o coloan cu produse n stoc. Mergem n Datasheet View i apsm butonul Totals (l observai apsat n captura de mai jos). Apare o nou linie intitulat Total. E scris jos de tot, mai ngroat. n funcie de tipurile cmpurilor opiunile difer. De exemplu laCantitate, fiind numeric, pot alege ntre sum, medie, cte sunt, maxim, minim, deviaia standard i uh variana (nu le am cu economia). Am ales Sum i acum jos mi scrie 310 buci. Aceast extra-linie rmne (i dac nchidem i redeschidem baza de date) atta timp ct butonul Totals e apsat. Simpatic chestie, nu?

i acum ajungem la ultimul subiect, cmpurile calculate. Sunt dou moduri s le introducei: n Datasheet

View mergei la ultimul cmp (care nu e cmp de fapt), click pe sgeata n jos i alegei Calculated Field i tipul. Sau n Design View alegei laData Type evident Calculated. Un exemplu de cmp calculat ar
fi [TotalProdus] definit ca [Pret]*[Cantitate]. Atenie: nu este propriu-zis un cmp. MS Access nu adaug fizic un cmp la tabel. E un cmp virtual, calculat, cci aa i spune numele, n momentul afirii. Unii au criticat MS Access pentru introducerea acestui concept ce abate de la teoria strict a bazelor de date. Poi evita cmpurile calculate folosind interogri. Deci pur i simplu nu ai nevoie de cmpuri calculate. Dect cnd i fac plcere .

Am adugat deci un cmp calculat, dup cum am spus.

i l-am folosit cu facilitatea de totaluri anterior expus. i uite aa, fr s am cu adevrat un cmp nou, un cmp n plus, pot s vd de fiecare dat cnd deschid tabela cu produse n ce valoare sunt ele. MS Access calculeaz n cmpul calculat preul per produs (cte produse sunt nmulit cu preul produsului), iar apoi le nsumeaz. Simplu!

La final s vedem cum arat formularul creat de MS Access automat pentru tabela Produse. Dup cum vedei i am spus! se conserv formatele definite.

Sper c v-am spus nite lucruri utile.

PS: Nu folosii cmpuri calculate cnd vei da baza de date i unor prieteni n versiuni mai vechi. Nici MS Access 2007 nu se va descurca cu ele. Nu folosii mtile i formatele nct s blocai valori posibile. Poate un numr de telefon din alt ar sau orice n afara tiparului luat de Dvs n calcul.

MS Access: Din nou la formulare lucruri poate mai puin tiute


radu.capan 17 August 2010 Office 0 comentarii 148 afiri Taguri: Invatam MS Access, MS Access, Videotutoriale

Acum relum subiectul formulare cu sperana c voi aduce unele elemente noi celor care folosesc de ceva vreme MS Access. i vom ncepe cu o facilitate foarte simpatic i util: la un formular s putem sri rapid la o anumit nregistrare. S vedem cum. V amintii c avem o baz de date cu persoane? Ieri am scris desprecmpurile calculate, i aa am adugat cmpul NumePrenume cu formula [Nume] & & [Prenume]. n tabul design sunt controalele disponibile: asigurai-v c e activ/apsat Use Control

Wizards i alegei Combo Box. Plasai controlul n partea de header i n vrjitorul ce apare mergei pe ultima opiune: Find a record on my form based on the value I selected in my combo box.

Vedei mai jos rezultatul: e foarte elegant i rapid s ajungi la ce nregistrare vrei fie alegnd din list, fie scriind (primele litere, apoi se face autocompletare). i cost doar cteva clickuri.

Ai observat c la greutate apare un gradient. Ce e cu el? n tabul Format exist un buton Conditional

Formatting, care ne permite s adugm reguli pentru colorarea cmpurilor. S vedem ceva simplu:
dac greutatea persoanei e peste 40 de kilograme s coloreze cu albastru i s fac textul ngroat (regula se vede n captura de mai jos). De ce e util aa ceva? Pi s zicem c avem o tabel i anumite cmpuri dorim s ne sar n ochi cnd au anume valori (de exemplu cmpuri necompletate sau cu valori n afara unor limite obinuite). Aceast formatare condiional e minunat n astfel de cazuri! Dar, dup cum se vede din captura de mai jos, pe lng verificarea valorii curente (Check values in the current

record or use an expression), exist i varianta verificrii n comparaie cu celelalte (Compare to other records): acest caz d gradientul ce se vede mai sus un alt indicator vizual excelent!

n msura n care folosim expresii, aceast formatare condiional ne d aripi. Putem face ca un cmp s arate special (s bat la ochi) cnd ndeplinete (sau nu) o condiie conceput de noi. Exist i varianta ca la ndeplinirea unei condiii cmpul s fie pur i simplu dezactivat (devine needitabil). Despre toate cele descrise mai sus e screencastul urmtor, care sper s lmureasc poate i unele lucruri descrise prea laconic mai sus. Ca ntotdeauna, nu uitai s mrii pe tot ecranul clipul de mai jos (Play in HD).

Dac vrei baza de date folosit n screencast, o putei descrca de aici.

MS Access: Cmpurile multi-valoare


radu.capan 18 August 2010 Office 0 comentarii 101 afiri Taguri: Invatam MS Access, MS Access

Ca n cazul contestatelor cmpuri calculate, vom vedea astzi o mecherie ce poate fi foarte util dar care nu va fi pe placul celor foarte riguroi, care vor s respecte standardele tradiionale ale bazelor de date. Dac v ntrebai care sunt acele standarde atunci foarte probabil c nu v pas s le nclcai . Vom vedea deci astzi cum putem ntr-un cmp s nu memorm o singur valoare, ci mai multe. Huh! Ne folosim de deja clasica noastr baz de date unde avem o tabel Persoane i una Produse. Ce ar fi s adugm un cmp de cumprturi la persoane, cu produsele cumprate?

Pentru a aduga un cmp multi-valoare avem dou ci, dup cum adugm cmpul din Design View sau din Datasheet View. Oricare ar fi modul vezi captura de mai sus vom vedea un vrjitor care n primul pas ne ofer dou opiuni, iar noi vom merge pe prima: I want the lookup field to get the values from

another table or query (adic vreau ca acest cmp s i ia valorile din alt tabel adic la noi din tabela
Produse).

Rmne s spunem care tabel (sau interogare). n cazul nostru alegem tabela Produse.

Am spus tabela, evident vine de indicat cmpul. n cazul nostru Produs (automat, dar nici nu trebuie s v batei capul, va fi luat i cmpul ID, pentru a putea identifica exact produsul).

E recomandabil ca n pasul urmtor s alegem sortarea ascendent dup Produs (ca s regsim mai uor produsele).

Ni se ofer acum o previzualizare a cmpului, cu valorile lui (vedei, e i cmpul cheie, adic ID la noi, dar nu ne intereseaz; de aceea MS l i ascunde).

i am ajuns la ultimul pas: dm un nume cmpului, n cazul nostru Cumparaturi, i neaprat (!!!) bifm cmpul Allow Multiple Values. Apoi click pe Finish i am terminat.

Vedem mai jos: n modul Datasheet View, noul cmp admite doar aa i spune numele valori multiple! Putem s indicm astfel mai multe produse cumprate de o anumit persoan.

Iar simpla editare a cmpurilor multi-valoare se menine i n formulare. Vedei mai jos un formular construit automat de MS Access pentru tabela Persoane, iar la cmpul Cumparaturi avem acelai sistem de editare ca n modul Datasheet View ilustrat mai sus.

i pentru cei care se ntreab cum i de ce permite MS Access un cmp s aib mai multe valori, citez de aici: Probabil c v ntrebai de ce Office Access 2007/2010 v permite s stocai mai multe valori ntr-un cmp, n timp ce majoritatea sistemelor de gestionare a bazelor de date asociate interzic acest lucru. Rspunsul este c motorul bazei de date din Office Access 2007/2010 nu stocheaz de fapt valorile ntr-un singur cmp. Cu toate c vedei i lucrai cu un cmp care pare unic, valorile sunt stocate de fapt independent i sunt gestionate n tabele de sistem ascunse. Motorul bazei de date Access manevreaz acest lucru pentru dvs, separnd automat datele i mbinndu-le din nou, pentru a acoperi valorile ntr-un singur cmp. Tehnic vorbind, un cmp multi-valoare Access modeleaz o relaie multiform n ambele

sensuri. De exemplu, gndii-v la un tabel de evenimente n care atribuii responsabilitatea fiecrui eveniment unuia sau mai multor angajai. S presupunem c realizai un cmp multi-valoare denumit AtribuitLui pentru a atribui evenimente angajailor. Relaia dintre evenimente i angajai este multiform n ambele sensuri. Mai exact, avei posibilitatea s atribuii mai multor angajai un singur eveniment sau s atribuii unui singur angajat mai multe evenimente. Ca o ultim observaie: cnd dorii tergerea unui cmp multi-valoare vei da de un mesaj de eroare. Trebuie s tergei mai nti relaia creat ntre tabele, i abia apoi vei putea terge cmpul. Cum tergei relaia (ce sunt relaiile? o s aflm poate ntr-un articol)? Mergei n tabul Table i dai click pe Relationships. Apoi click pe linia dintre tabele (devine mai groas) i apsai butonul Delete.

MS Access: Generarea rapoartelor


radu.capan 20 August 2010 Office 0 comentarii 140 afiri Taguri: Invatam MS Access, MS Access, Videotutoriale

Avem deja 10 articole n seria nvm MS Access, iar acum s l vedem pe al 11-lea. i trecem la un subiect nou (dar vom mai face drumuri napoi), i anume rapoartele. Am vzut ce sunt tabelele (moduri structurate de memorare a unor informaii), i am creat formulare care s ne ajute s turnm date n tabele. Dar ce folos s le avem dac nu le putem i expune? Desigur, printre primele articole am vzut cum putem duce datele din MS Access n MS Word, cu care probabil suntem mai muli familiari. Dar adevrul e c nu trebuie s prsim MS Access pentru a afia frumos datele din tabele. De aceea exist rapoartele! i ele pot fi foarte frumuele i foarte utile.

Din nou MS Access are instrumente automate de generare a raportelor. i ele pot fi utile atunci cnd ai tabele simple, cu doar cteva cmpuri. Dar, pentru c aici vorbim de estetic spaiu relativ, dup gustul fiecruia e mai greu s ne mulumim cu ce se genereaz automat. Mai sus am ilustrat dou modaliti. Mai nti cea mai simpl e ca la formulare: dai click pe tabel, s fie selectat, apoi din tabul Create click pe Report. Gata. n cteva secunde ai raportul. O alt modalitate, cu ceva mai multe opiuni, e folosirea vrjitorului. Tot n tabul Create dm acum click pe Report Wizard. n acest caz putem alege cmpurile (adic s scpm de cele ne-necesare n raport), s facem grupri i sortri n fine, rezultatul poate fi cel dorit, dup tabel (dup complexitatea ei adic). Am s v propun ns, pentru a noastr tabel demonstrativ persoane, s ncercm s construim singuri raportul.

Am putea s tragem cmpurile (dup ce am spus ce tabel folosete raportul), dar mie mi place s pornesc de la cmpuriunbound, adic nelegate de vreun cmp. De ce? ntr-un screencast mai jos vom vedea cum am construit urmtorul raport de fapt cea mai mare parte a lui. Screenr.com are o limitare de 5 minute i vrnd s art una alta (plus blbindu-m n pai) am trecut de prag. Oricum: obiectivul e raportul de mai jos. Dup cum spuneam, prefer s pornesc cu cmpuri simple, aa cum vin ele din seciunea Controls a tabului Design. Am pus trei pe spaiul de lucru i apoi din tabul Arrange, selectndule, am alesTabular. Automat partea text s-a mutat n header, n seciunea central a raportului rmnnd cmpurile goale. La primul am scris ca valoare = [Nume] & " " & [Prenume]. Astfel, n loc s avem dou coloane, una pentru nume, alta pentru prenume, avem o singur coloan cu numele complet (evident, puteam folosi i cmpul calculat, dar nu am vrut, pentru a demonstra cum se pot concatena cmpuri). La urmtorul am scris DataNasterii: atenie cnd se scrie ceva ce coincide cu numele unui cmp, va fi considerat c acolo dorim respectivul cmp. Logic, nu? Similar, am pus Localitate i imediat am avut coloana cu localitile. Simplu, simplu, simplu

Acum vine o chestie tare: gruparea i sortarea. Click pe butonul Group & Sort din tabul Design. n partea de jos, sub raport, va apare un panou cu dou butoane mari: Add a group i Add a sort. Am dat Add a

group i din lista cmpurilor, ce apare imediat, am ales Nationalitate. i uite aa, lista simpl se transform ntr-o list n care persoanele sunt grupate dup naionalitate. Cu click pe Add a sort am pus
ordonare cresctoare dup nume, apoi dup prenume, i de aceea vedei mai sus avem Anastasie, apoi Briciu, adic ntr-un grup de o anumit naionalitate persoanele apar n ordine alfabetic.

n fine, am mai fcut diverse modificri dup punctul unde se oprete screencastul, precum pune bordurilor (sunt nite linii la controale tragei-le dup cum dorii). Plus minus, raportul de mai sus a fost realizat dup cum urmeaz.

Ca de obicei, cui vrea i ofer i baza de date ca s vad despre ce am vorbit.

MS Access: deschiderea de formulare din rapoarte


radu.capan 28 August 2010 Office 0 comentarii 171 afiri Taguri: Invatam MS Access, MS Access

n seria dedicat nvrii lucrului cu MS Access continum cu un articol care se refer n continuare la raporturi, mai exact la un truc uneori util deschiderea de formulare din rapoarte. Dar pn acolo un truc introductiv: dorii s punei un numr cresctor la o list (precum n raportul vizibil n captura de mai jos)? Nu se poate folosi ID-ul pentru c acesta nu crete dup cum e sortarea pe care o dorim noi. i atunci ce e de fcut? Trucul presupune adugarea unui cmp la care i dm valoarea 1, i apoi la Running

Sum alegem Over All (sau Over Group dac lucrm cu grupuri i dorim numrarea per grup). Simplu, nu?

Simplu dar de efect. Captura de mai jos ar trebui s lmureasc dac ceva nu e nc clar.

i s mergem mai departe: s zicem c avem un raport cu persoanele din tabela noastr de teste i vrem ca la un click pe un nume s se deschid formularul pentru persoane, chiar la persoana cu pricina. Sun greu? Probabil c da, dar procesul e destul de intuitiv. Click pe cmpul din raport care dorii s devin clickabil, iar la Property Sheet mergei la Event i de la On Click alegei s creai un macro. Vei vedea c

MS Access 2010 nu v invit s scriei cod curat ci exist un editor/constructor intuitiv. La Add New

Action alegei OpenForm, indicai numele formularului la Form Name. Cheia e condiia, care n cazul nostru va fi = [ID] = & [ID]. Pe romnete: deschide formularul direct acolo unde ID-ul din tabela
Persoane e ID-ul persoanei clickate n raport. Ai sesizat: e nevoie de cmpul ID n raport. L-am inclus dar, ca s nu apar (nu e nevoie de el vizibil, ci doar pentru macro) am pus n tabul Format, la Visible valoarea No. Dac am pus acest cmp ID i am scris corect macroul, vedei mai jos captura, totul va fi OK.

Desigur, cu macrourile se pot face operaiuni mai complicate. Dac v-a plcut acest mic truc ncercai s realizai i alte operaiuni (din rapoarte dar i din formulare). Putei descrca baza de date folosit n aceste materiale.

S-ar putea să vă placă și