Maschere Access uniche
guida

Progetto e personalizzazione delle maschere Access

Le maschere di Access sono le schede o finestre che includono gli elementi che servono a fare funzionare l’applicazione. Tra gli elementi figurano le tabelle con i record per inserire e leggere i dati, i vari controlli dell’interfaccia quali i bottoni e i calendari, le etichette e altri.

In termini di vantaggi, con Access puoi decidere:

  • come presentare i dati
  • quale grafica adottare
  • quali elementi aggiungere

In pratica puoi customizzare completamente il tuo programma.

Ed è proprio di personalizzazione delle maschere Access che parliamo in questo articolo, ovvero di come puoi intervenire sulle proprietà per modificare non solo la grafica, ma anche il funzionamento del programma. Lo facciamo come al solito attraverso esempi facili e con l’aiuto di tanti screenshot.

Dopo avere letto questo articolo sarai in grado di:

  • progettare maschere che hanno una funzione specifica
  • definire l’aspetto delle maschere in ogni particolare

Sei pronto a rendere unica la tua applicazione db Access?

A ciascuno la sua UI

I software realizzati in ottica utente sono quelli che presentano un’interfaccia – di seguito UI, acronimo di User Interface – semplice che facilita il lavoro dell’utente. Poiché ogni software serve a qualcosa di specifico e viene usato in un determinato contesto, segue che ogni software ha una UI con caratteristiche proprie.

Per realizzare una buona UI devi calarti nei panni di chi userà il software: se lo farai ogni volta che progetti una maschera,  ti sorprenderai a fare scelte diverse a seconda dei casi e, man mano che andrai avanti con il tuo lavoro di customizzatore di maschere, la cosa ti verrà del tutto naturale.

È ora di divertirci, scarica il database di esempio Libria, che si parte.

Visualizzazione struttura

La modalità visualizzazione struttura è quella che permette di progettare le maschere e di apportarvi modifiche di vario tipo, incluse quelle al layout e alla grafica.

Per accedere a una maschera in visualizzazione struttura vi sono vari modi, il più semplice dei quali consiste nell’aprire prima la maschera in visualizzazione maschera (doppio clic sulla maschera che si vuole aprire), quindi selezionare la visualizzazione struttura dal pulsantone a scelta multipla che si trova alla sinistra del menu alto.

Menu visualizza struttura

A seconda delle situazioni, comunque, potrai usare altri modi per accedere alla visualizzazione struttura:

  • selezionare la maschera dal riquadro di spostamento e poi usare la voce del menu contestuale (su pc si apre con un clic sul pulsante destro del mouse; in questo caso non serve avere la maschera già aperta)
  • usare il menu contestuale con clic da una maschera aperta (in questo caso accedi alla struttura della maschera già aperta indipendentemente da quella selezionata nel riquadro di spostamento).

Ecco come si presenta il nostro database Libria (v. 0.2.0) all’apertura della struttura della maschera Autori.

Menu finestra proprieta

Nell’immagine sopra si notano due cose in particolare:

  • la sezione strumenti struttura maschera del menu superiore, che si apre in automatico (e comunque puoi sempre spostarti tra le varie voci di menu)
  • la finestra delle proprietà sulla destra, che si apre con l’omonimo pulsante del menu superiore oppure ricorrendo al vecchio e pratico menu contestuale.

Finestra delle proprietà

Partiamo con 3 raccomandazioni:

  1. se all’apertura della maschera in visualizzazione struttura la finestra delle proprietà non è aperta, allora aprila tu stesso
  2. progettare maschere è più semplice se hai a disposizione un monitor di dimensioni generose, quindi è preferibile usare quanto meno un notebook con schermo da 15″
  3. l’interfaccia di progettazione di Microsoft Access permette un buon livello di interazione sia sul piano intuitivo che visuale, ma presto ti accorgerai che il modo più semplice e produttivo di operare prevede un ricorso frequente proprio alla finestra delle proprietà.

Le informazioni e i controlli presenti all’interno della finestra delle proprietà possono riferirsi alla maschera o ad altro, quindi dipendono dal tipo di selezione. L’elemento selezionato nella figura sopra, ad esempio, è la maschera, quindi le proprietà presenti in finestra sono quelle della maschera aperta (in questo caso Autori).

Per scegliere un tipo diverso di selezione usa il menu a tendina o semplicemente fai clic su un altro elemento, come ho fatto io qui sotto facendo clic sul Corpo della maschera.

Selezione corpo maschera

Come puoi intuire guardando l’immagine in alto, le maschere di Access presentano 3 distinte aree:

  • Intestazione: qui usa un testo univoco per identificare la maschera (il titolo della maschera, inserito di default con la creazione guidata, è una buona soluzione). In alcuni casi quest’area può contenere pulsanti comuni ad altre maschere, una sorta di menu che permette azioni non legate alla presentazione e all’elaborazione dei dati.
  • Corpo: include gli elementi che hanno a che fare con la presentazione e l’elaborazione dei dati.
  • Piè di pagina: include informazioni secondarie (es. sulla versione e sul brand) ed eventuali controlli non direttamente legati alla presentazione e all’elaborazione dei dati.

La finestra delle proprietà include 5 schede o tab:

  • Formato: include tutte quelle proprietà che caratterizzano il formato dell’elemento quali la larghezza, il colore o l’immagine di sfondo, lo stile del bordo e la presenza delle barre di scorrimento.
  • Dati: salvo casi specifici, le maschere di Access presentano dei dati e/o permettono di modificarli, quindi sono direttamente collegate a tabelle e query del db.
  • Evento: da qui è possibile collegare gli eventi con le routine, ovvero fare in modo che, attraverso l’elemento selezionato, l’applicazione risponda ad un dato evento in modo definito (es. al clic su un pulsante viene visualizzato un report contenente i dati estratti con una query).
  • Altro: proprietà non incluse nelle schede precedenti, tra cui l’interessane popup, i file di guida e le istruzioni per le barre.
  • Tutto: questa scheda raggruppa tutte le proprietà incluse nelle precedenti quattro schede.

Semplificando possiamo dire che Formato, Dati ed Evento corrispondono alle 3 questioni fondamentali che entrano in gioco nella progettazione delle maschere di un database Access:

  1. Aspetto e usabilità
  2. Accesso ai dati per mezzo di query e in tutte le modalità (lettura, modifica, aggiunta, eliminazione), anche al fine di elaborare i dati per ottenere nuove informazioni
  3. Macro e Programmazione VBA (Visual Basic for Applications) per aggiungere capacità di elaborazione alla nostra applicazione, anche attraverso istruzioni che rendono automatici compiti che sono ripetitivi.

Aspetto della maschera

Con la maschera Autori aperta in visualizzazione struttura e con tipo di selezione su Maschera, scegli il tab Formato,  fai clic nel campo a destra di Etichetta e modifica l’etichetta da “Autori” inserendo un testo a piacere ad esempio “Authors”; fai clic su Salva e poi passa a Visualizzazione Maschera.

Etichetta maschera in Access

Il nome che appare sopra la scheda della maschera deve essere coerente con il testo che appare nell’intestazione, meglio ancora se le due etichette sono identiche come suggerisce Access di default. A scopo didattico modifichiamo dunque anche l’etichetta nell’intestazione: torniamo in visualizzazione struttura, selezioniamo l’etichetta da modificare e digitiamo il testo che vogliamo.

Etichetta dell'intestazione prima e dopo la modifica

L’immagine in alto mostra come si presenta in visualizzazione struttura l’elemento Etichetta14 prima (a sinistra) e dopo (a destra) la modifica. Se il testo dopo la modifica è più lungo o più breve è possibile modificare le dimensioni dell’etichetta in due modi:

  • agendo sulla proprietà Larghezza (nell’immagine vale 2,317 cm)
  • “tirando” l’etichetta con il mouse da uno degli 8 punti del riquadro giallo, come si fa con i programmi di grafica che hanno un’interfaccia visuale.

Fatto ciò, ti inviterei a diminuire la lunghezza dei campi, perché non ha alcun senso un campo email o nome largo circa 20 cm, figurarsi un ID che è un semplice numero a poche cifre(se il tuo db contenesse poco meno di 100,000 autori si tratterebbe di appena 5 cifre…).

Procedi così: in visualizzazione struttura scegli maschera come tipo di selezione e allarga il tuo spazio di lavoro a sufficienza per vedere lo spazio libero sotto e a destra della maschera, quindi con il mouse seleziona tutti gli elementi come nell’immagine seguente.

Selezione multipla elementi

Con le frecce sono evidenziate due cose:

  • Access indica che hai effettuato una selezione multipla di elementi
  • la larghezza comune di questi elementi è 19,905 cm.

Questo è un caso facile perché la maschera Autori ha gli elementi della stessa larghezza e bene allineati grazie alla creazione guidata, ma anche in altri casi analoghi ti assicuro che le cose non cambiano molto, si tratta semplicemente di ridimensionare e allineare gli elementi, cosa che puoi fare anche in maniera intuitiva e visuale – un po’ come in PowerPoint, per capirci – oppure usando l’ormai famosa finestra delle proprietà (se non ne puoi più del tormentone della finestra delle proprietà significa che… sono riuscito a fartela entrare in testa! 😀 ).

Dopo avere ridimensionato tutti gli elementi a 10 cm, ho trascinato il bordo destro della maschera fino a dargli un piccolo margine rispetto agli elementi che contiene.

Ridimensiona elementi

Hai dato uno sguardo a come si presenta la maschera dopo le ultime modifiche? Per i miei standard l’aspetto di questa maschera realizzata con la creazione guidata è ancora disumano, ma qualcosa si muove. Sarebbe un passo in avanti evitare che il codice identificativo dell’autore si posizionasse nella riga sotto rispetto all’etichetta e sulla destra, perché si legge malissimo nonostante il dimezzamento della larghezza.

Nessun problema. Non ti avevo ancora detto che puoi trascinare gli elementi sul mouse dove vuoi e/o modificare le prop… beh, questo mi sa che te l’ho già detto. 🙂

Suggerimento: le etichette del campi sono associate ai rispettivi campi (puoi comunque creare etichette come elementi indipendenti); se vuoi selezionare l’una o l’altro con il mouse devi usare il quadratino in alto a sinistra del riquadro giallo.

Layout di campi ed etichette nelle maschere

I comandi del sottomenu Disponi sono essenziali per dare alla maschera il layout desiderato. Per ottenere il risultato sopra mi sono servito di Allinea (pulsante in alto) e delle proprietà Larghezza e Altezza.

Passando ai colori, immagina di volere dare risalto alle informazioni principali di questa maschera, che sono il nome dell’autore e il suo identificativo, cioè i primi due campi. Puoi cambiare i colori del testo selezionando i rispettivi campi e modificando i valori della proprietà Colore primo piano.

Colore primo piano

Puoi modificare il colore di sfondo delle diverse aree usando la proprietà Colore sfondo, come fatto qui sotto con il Corpo.

Colore sfondo

Se invece vuoi inserire un’immagine di sfondo all’interno della maschera (tipo di selezione: Maschera) devi giostrare con le seguenti proprietà: Tipo immagine, Immagine, Espansione immagine, Allineamento immagine, Modalità ridimensionamento immagine.

Sempre in tema di aspetto, considera che puoi partire da uno stile comune per tutte le tue maschere usando i temi, sia quelli predefiniti che quelli che vorrai eventualmente creare tu stesso. Puoi accedere ai temi in modalità struttura dal menu strumenti struttura maschera > progettazione.

Proprietà che incidono su funzionalità ed uso

Alcune proprietà di Formato vanno oltre l’aspetto e sono determinanti sul piano funzionale. Cito ad esempio Pulsanti di spostamento che, se selezionato su No, fa scomparire la barra in basso che permette di spostarsi trai vari record. Questa è un’opzione molto utile in maschere che hanno la funzione di presentare dati specifici estratti da una query e in cui non è previsto di spostarsi arbitrariamente su un altro record.

Esempio: la maschera utente a cui ha accesso un utente con privilegi di accesso può permettere all’utente stesso che vi accede la lettura ed eventualmente la modifica dei propri dati, ma non dei dati di altri utenti.

Giunti a questo punto ti invito a dare un altro sguardo alla visualizzazione maschera di Autori.

Aspetto maschera colorata

La maschera Autori adesso ha colori bellissimi (“i gusti sono gusti“, disse il gatto leccandosi il… ci siamo capiti 😀 ) e un layout giustificato da paura (come già detto nella puntata 2 questo è il peggior layout di maschera in assoluto, valuta bene prima di sceglierlo perché si adatta a poche situazioni), eppure c’è qualcosa che ancora non va.

Hai notato che si apre come una scheda ma a pieno schermo? Non ha molto senso ed è poco pratico, almeno per questa specifica maschera. Proviamo a dargli un layout a popup: in visualizzazione struttura seleziona la maschera, vai sul tab Altro e scegli per la proprietà Popup, quindi salva, chiudi e riapri in visualizzazione maschera.

Popup Access maschera e caratteristiche

Con le lettere e le frecce ho indicato alcune caratteristiche che potresti volere modificare in questa o in altre maschere.

  1. Posizione della maschera all’apertura: in questo caso è settata su la proprietà di Allineamento centrato automatico.
  2. Pulsanti di spostamento: in questo tipo di maschera ci stanno bene perché può servire spostarsi da un autore all’altro.
  3. Selettori di record: sono più utili in un layout di tipo tabellare.
  4. Altezza del Piè di pagina: al momento vale 0 cm, in pratica non c’è piè di pagina.
  5. Pulsante di chiusura: settato su Sì, permette di chiudere la maschera con un clic.

In alcuni casi può tornare utile la proprietà Pulsanti di ingrandimento e riduzione, che permette di attivare uno o entrambi i pulsanti (nell’immagine sopra sono inattivi l’uno e l’altro).

Spostabile permette invece di fissare la maschera impedendo all’utente di spostarla, utile se si vuole costringere l’utente a compiere un’azione che prevede l’interazione con la maschera.

Un gruppo interessante di opzioni è quello che permette o impedisce le diverse visualizzazioni: Consenti visualizzazione Maschera, Consenti visualizzazione Foglio dati, Consenti visualizzazione Layout. Attivare tutte le opzioni può non essere una buona idea perché alcune visualizzazioni non si prestano a tutte le maschere e l’utente potrebbe essere meno produttivo.

Se hai personalizzato la maschera con ulteriori elementi ti conviene consentire un unico tipo di visualizzazione, che è quello al quale hai pensato in fase di progetto della maschera (es. visualizzazione maschera). In alternativa e sempre se la presenza di altri elementi sulla tua maschera lo permette, puoi impostare una visualizzazione predefinita scegliendo tra i valori: maschera singola, maschere continue, foglio dati, dividi maschera.

Fin qui ho descritto i principali comandi/proprietà che ti permettono di personalizzare l’aspetto delle tue maschere; spulciando tra i vari comandi di Access scoprirai nuove funzionalità e capirai che con questo fantastico programma RDBMS è davvero possibile costruire interfacce che calzano a pennello con il tuo scopo e il tuo utente tipo.

 

Post scriptum: a questo articolo mancano tre paragrafi che vertono rispettivamente su: Dati, Aggiunta di elementi, Creazione di maschera da zero (non guidata). L’articolo sarà integrato entro qualche giorno.

Potrebbero interessarti anche le precedenti parti della guida Access:

  1. Come creare un database relazionale con Microsoft Access
  2. Creazione guidata di maschere in Access
Francesco D'Agostino
Lettore compulsivo, motociclista incallito, gran mangiatore di pizza, tifoso insospettabile. Massa proporzionale alla curiosità. Founder di Endelab, Digital Agency in cui ricopre il ruolo di consulente, sviluppatore e project manager.
Francesco D'Agostino

22 pensieri su “Progetto e personalizzazione delle maschere Access”

  1. Ciao Francesco, ti ho scoperto solo oggi ed il modo in cui affronti gli argomenti mi piace molto; pratico, sintetico quanto basta ma esaustivo.
    Sono un utente “fai da te” ed ho un piccolo problema da cui non riesco a venir fuori. Uso Access 2013; ho creato un database con varie tabelle tra cui una che contiene i PROGETS che la mia azienda gestisce. In questa tabella ci sono due campi booleani che ho chiamato CLOSED e CONFIDENTIAL, di cui si capisce facilmente il significato.
    Il problema che ho è nelle query di selezione che alimenta un report di stampa. Per gestire i dati ho creato un form MAIN MENU che contiene un TabControl. Uno dei Tab è relativo ai report disponibili e contiene due CheckBox unbound, chiamati CLOSED e CONFIDENTIAL, in testa all’elenco dei vari nomi di report disponibili, tutti legati a delle macro che aprono i vari report. . Voglio poter stampare un report che contenga o meno i record della tabella PROGETTI, a secondo della combinazione cliccata per questi due CheckBox. Ho provato in tutti i modi inserendo la funzione (iif) nei criteri dei due campi CLOSED e CONFIDENTIAL della query di selezione ma non ne vengo fuori. L’unica alternativa che mi funziona consiste nel creare una query per ognuna delle combinazioni che posso avere ma con 2 checkbox ho 4 combinazioni per report; un po troppe se aggiungo altri report od altri checkbox. Sono certo che esiste un metodo migliore ma mi serve il tuo aiuto. Scusa per la lunghezza ma spero proprio di farcela a risolverlo. Grazie in anticipo.

  2. Ciao Francesco,

    Volevo chiederti un consiglio… io ho creato un database per la mia azienda con Access 2010 ancora più di un anno fa, ho fatto tutto per bene però mi manca il passaggio finale cioè renderlo un programma eseguibile per tutti i miei colleghi anche contemporaneamente.
    Ti ringrazio

    Francesca

    1. Ciao Francesca,
      ti descrivo un metodo di grande efficacia nelle reti locali.
      Puoi condividere un’applicazione Access dividendola in due parti: nella prima inserisci i dati puri del db, cioè le tabelle; nella seconda tutto quanto serve a fare funzionare l’applicazione, quindi query, maschere, report, macro, codice vba.

      Fatto questo colleghi nell’applicazione (2) le tabelle (1) come origine esterna dei dati, cosa che puoi fare da Access 2016 seguendo la voce di menu Dati esterni > Access > Collega all’origine dati creando una tabella collegata (funzionalità presente anche nelle precedenti versioni, ricordo che lo facevo già con Access 2000).

      A questo punto la soluzione è semplice: il database con le tabelle lo metti su un server (è sufficiente una cartella di un pc accessibile dagli altri pc in rete locale), mentre su ogni client (pc) copi la parte con l’applicazione.

  3. Ciao Francesco, ho seguito tutta la tua guida e sto cercando di creare un DataBase per la mia tesi! spero tu possa rispondere a una mia domanda…
    Vorrei sapere se in una relazione derivata da un’associazione è corretto inserire come chiave primaria non solo le chiavi esterne (derivate dalle relazioni-entità corrispondenti), ma anche un ulteriore attributo che fa parte solo dell’associazione.
    Esempio: ho una relazione libro-citazione-argomento_tesi
    Nella relazione citazione inserisco: la citazione, la pagina e devo segnalare come chiave primaria il nome dell’argomento_tesi e il codice ISBN del libro. In questo modo però risulta che io possa fare da un libro una sola citazione per ogni argomento, mentre si suppone che lo stesso libro possa essere utilizzato più di una volta per lo stesso argomento. In questo caso è corretto indicare come chiave primaria sia ISBN, che argomento_tesi, che l’attributo citazione (una frase che non sarà mai ripetuta)?
    Ti ringrazio tanto se potrai darmi una risposta, altrimenti ti ringrazio comunque per la tua guida, mi ha aiutata tanto =)

    1. Ciao Elisa,
      nel caso che hai esposto, come hai evidenziato a parità di libro ( chiave primaria isbn ) e argomento_tesi ( chiave primaria argomento ) ci possono essere più citazioni, quindi la coppia di chiavi in questione non costituisce una chiave primaria per questa tabella.

      Passando all’attributo citazione, se “la frase non sarà mai ripetuta” allora il suddetto attributo costituisce da solo una chiave primaria, a meno che tu non volessi dire che “la frase non può essere ripetuta nello stesso libro e per lo stesso argomento”, nel qual caso in linea teorica la chiave primaria potrebbe essere la terna di chiavi di libro, frase citazione e argomento_tesi.

      Venendo al nostro database per la tesi, la frase della citazione sarebbe una pessima chiave, difficile da trattare e con scarse prestazioni. Sarebbe più giusto usare un indice numerico del tipo id_citazione o id_frase, che in Access può essere assegnato anche in automatico come numero intero che si auto-incrementa.

      Partiamo quindi dall’idea di usare un numero intero come chiave. A questo punto e stante quello che abbiamo detto hai due possibilità:
      1) “la frase non sarà mai ripetuta”: crei una tabella Citazioni con id_citazione come chiave primaria, mentre isbn e argomento li fai pescare all’interno delle rispettive tabelle;
      2) “la frase non può essere ripetuta nello stesso libro e per lo stesso argomento”: crei una tabella Frasi_citazioni con id_frase come chiave primaria e frase per inserire il testo vero e proprio della frase; poi crei una seconda tabella Citazioni con questa terna come chiave primaria: (id_frase, isbn, argomento).

      L’opzione 2 si usa in limitati casi, probabile che la 1 faccia al caso tuo.

      Spero di esserti stato utile. Se incontri difficoltà scrivi un commento e ti posto un esempio.
      Grazie per avere letto e apprezzato la guida e in bocca al lupo per la tesi! 🙂
      Francesco

  4. Non ho mai usato Access e senza le tue guide non saprei come avrei fatto, sono davvero troppo utili, semplici e chiare! Spero tu riesca ad integrare i prossimi capitoli a breve!!

    1. Ciao Leo, grazie.
      Intanto è uscito il nuovo Office 2016 e quindi si è aggiornato anche Access alla versione ultima, che però non differisce tanto dalle precedenti. Le altre parti della guida saranno anche l’occasione per mostrare la nuova interfaccia. 🙂

  5. Grazie Francesco per il prezioso aiuto che mi hai dato con le tue guide Access. Hai scritto anche: “…a questo articolo mancano tre paragrafi che vertono rispettivamente su: Dati, Aggiunta di elementi, Creazione di maschera da zero (non guidata)….” Li hai pubblicato poi questi 3 paragrafi?

  6. Ora ho trovato Access sul pc, (MSACCESS.EXE) ma è inutile, anche selezionandolo, poi non compare sulla lista di quelli abbinabili al file.
    Guardando qua e là su internet ho scoperto che anche altri hanno lo stesso problema, ma la soluzione sembra parecchio complicata… Hai qualche idea? Scusa se sono fuori tema. La chiudo qua.

  7. Aiuto, ho comprato Access 2010, posso creare db e ho scaricato libria ma… per aprirlo devo prima aprire access, perché se faccio doppio clic su unfile formato .accdb mi chiede con che programma aprirlo, e fra quelli che elenca, access non c’è!!!
    Non so che fare. Access non compare fra le opzioni, e anche con Sfoglia… io sul computer non lo trovo!

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *