Quadro sinottico dello storico bilanci con Access 2007

di Gianfranco Budano

scritto il

Trasferire i dati da Excel a Access per poter incrociare i dati ed ottenere in un colpo d'occhio uno storico dei bilanci e dei conti

Riassumere in un unico quadro sinottico l’andamento storico dei bilanci aziendali visualizzandone le variazioni di costi e ricavi nel corso degli anni può non essere operazione semplice e scontata. Vi sono situazioni in cui la cessazione di alcuni conti o l’accensione di nuovi non permette di incollare semplicemente l’uno affianco all’altro i vari esercizi annuali. Occorre in tal caso utilizzare una corretta pianificazione delle procedure necessarie al raggiungimento di un corretto risultato.

Nel file in allegato abbiamo inserito alcune tabelle, per rappresentare i conti, non sono molti ma bastano ad evidenziare il funzionamento delle query.

Esempio di quadro sinottico di bilancio
scarica l’esempio

Organizzare il lavoro preliminare

Per realizzare il lavoro utilizziamo Excel ed Access nella versione 2007. Partiamo dal presupposto che i bilanci che intendiamo raffrontare siano disponibili in formato Excel e che solo in un secondo momento verranno importati in Access per la necessaria elaborazione il cui prodotto finale sarà rappresentato da un foglio di calcolo che ci permetterà di leggere l’andamento della spesa conto per conto nel corso degli anni presi in considerazione.

Per prima cosa occorre preparare i file Excel contenenti i bilanci aziendali relativi agli anni che si intendono raggruppare formattandoli in maniera opportuna. Ci sono diverse cose di cui bisogna tenere conto e diversi formati in cui è possibile esportare.

Access rende disponibili diverse modalità di accesso ai dati esterni: si può attivare un collegamento oppure si può effettuare una vera e propria importazione; il collegamento o l’importazione possono essere effettuati da un file di testo o direttamente da un file Excel.

Specie per chi è alle prime armi è consigliabile esportare i dati da Excel passando per un file di testo. Questo per diverse ragioni:

  • In Access la procedura di importazione di un file di testo è più veloce (questo aspetto assume una maggiore importanza quando si ha a che fare con file molto grandi)
  • L’importazione di un file di testo è personalizzabile con maggiore precisione; nella fase di importazione di un file Excel, infatti, molte informazioni vengono prelevate direttamente dai formati impostati, generando, a volte, risultati inaspettati e sgraditi. Potendo personalizzare nel dettaglio l’importazione, possiamo controllare il processo nel dettaglio ed evitare brutte sorprese

Da Excel al file di testo

Nella preparazione di un file Excel da esportare in Access occorre rispettare alcuni semplici accorgimenti; un po’ di attenzione e una certa precisione in questa fase eviteranno di incorrere in errori o peggio ancora di rifare il lavoro in seguito.

Per prima cosa occorre controllare che non vi siano colonne o righe nascoste o non necessarie al prosieguo del lavoro;

I campi numerici non devono essere formattati: una formattazione con il puntino per la delimitazione delle migliaia può creare problemi e generare errori; via tutto quindi.

Figura 1. Evitare la formattazione per i campi numerici

Evitare la formattazione per i campi numerici

Occorre controllare i nomi dei campi: è consigliabile nominare le colonne del foglio da esportare con una sola parola o due separate da un trattino basso (_). Se il titolo della nostra colonna era ad esempio “Bilancio economico aziendale 2007” si potrebbe ridurlo a BilancEcAz_2007 ad esempio.

Salvare infine il file con “Salva con nome” e specificando come “Tipo file” il “Testo (delimitato da tabulazione)”.

Figura 2. Salvare in formato testo

Salvare in formato testo

Per concludere salvare anche una tabella nella quale siano presenti tutti i conti economici o patrimoniali relativi a tutti gli anni di cui si intendono raffrontare gli andamenti, compresi i conti cessati nel corso del tempo o quelli di nuova accensione.

Quando avremo salvato tutti i fogli elettronici relativi ai bilanci che intendiamo confrontare potremo finalmente passare alla fase di importazione su Access.

Importazione dei file di testo in Access

La procedura per l’importazione di un file di testo in Access è veloce e al contempo personalizzabile in ogni dettaglio. Dal Ribbon scegliamo il menu “Dati esterni” e dal gruppo “Importa” clicchiamo sul pulsante “File di testo”.

Figura 3. Importare da file di testo

Importare da file di testo

Partirà la procedura guidata per l’importazione di un file di testo. Cominceremo col premere il pulsante “sfoglia” per indicare l’indirizzo ove risiedono i documenti da importare e selezionando il primo.

Fra le tre opzioni disponibili sceglieremo poi la prima: “Importa dati di origine in una nuova tabella nel database corrente”. Premendo il pulsante “Ok” inizierà la vera fase di personalizzazione dell’importazione. Il sistema rileverà automaticamente di avere a che fare con un file delimitato da tabulazione. Possiamo premere il pulsante “Avanti”.

In questa fase indichiamo al wizard se i nomi dei campi sono contenuti nella prima riga del documento che stiamo importando e proseguire.

Nella fase successiva possiamo cambiare il nome ai campi, modificare il tipo di dati e possiamo scegliere se indicizzarli (scegliere “Si duplicati ammessi” se si tratta di codici). Lo facciamo per ogni colonna. Nell’esempio abbiamo a che fare con tre colonne (tre campi):

  • il codice di conto economico
  • la descrizione
  • la valorizzazione economica

Assegnamo il tipo Testo ai primi due campi e il tipo Precisione doppia ai valori numerici. Nella casella “Indicizzato” sceglieremo “Si duplicati ammessi” se si ha a che fare con codici identificativi e “Si duplicati non ammessi” se questi sono univoci, cioè esenti da duplicazioni. Negli altri casi possiamo ignorare questa casella.

Nella fase seguente dobbiamo indicare una chiave primaria. Occorre premettere un aspetto fondamentale della questione: stiamo importando dei bilanci aziendali, composti da una sequenza di conti (economici o patrimoniali) e seguiti dalla relativa valorizzazione economica. Ogni conto è identificato attraverso un codice e una descrizione. In questa sede daremo per assodato, potrà sembrare banale ma è fondamentale ribadirlo, che nessun codice conto si ripeta, che non vi siano cioè duplicazioni delle codifiche. Se così non fosse si incorrerebbe in errori di calcolo che inficierebbero gravemente il risultato.

Pertanto scegliamo l’opzione “Chiave primaria definita dall’utente” e, nella casella combinata, il campo “codice del conto”. In questo modo se il campo dovesse contenere codici duplicati il sistema segnalerà un errore.

Finalmente assegnamo il nome alla nostra tabella, ma prima di concludere e dovendo ripetere l’importazione per gli altri bilanci, sarà bene salvare la procedura di importazione, in modo da non doverla ripetere. Clicchiamo su “Avanzate” e salviamo la procedura assegnando un nome che poi richiameremo nella successiva importazione.

A questo punto non ci rimane che ripetere l’importazione per tutti i bilanci e per la tabella contenente solo i codici di conto e le relative descrizioni.

Creare una query di selezione per il raffronto dei bilanci

Siamo alla fase conclusiva, abbiamo importato tutti i bilanci e la tabella relativa all’elenco di tutti i conti aziendali. Abbiamo controllato che ogni tabella sia dotata di una chiave primaria che abbiamo identificato nel codice di conto, ciò ci consentirà di agire con tranquillità onde evitare errori di calcolo.

Un’altra condizione assolutamente necessaria è che la tabella dei conti contenga assolutamente tutti i conti utilizzati negli anni presi in esame, sia quelli accesi di recente, sia quelli eventualmente cessati negli ultimi esercizi.

Creiamo quindi la query: dal Ribbon scegliamo il Crea>Struttura query. Aggiungiamo tutte le tabelle dei bilanci importati e la tabella dei conti. Spostiamo la tabella dei conti al centro e tutt’intorno quelle relative ai bilanci. Selezioniamo dalla tabella dei conti il campo contenente il codice di conto e trasciniamolo sul relativo campo contenente il codice di conto del primo bilancio. Ripetiamo l’operazione con tutti glia altri.

Figura 4. Creare le correlazioni tra le tabelle

Creare le correlazioni tra le tabelle

Selezioniamo a questo punto la prima linea di relazione che si sarà creata fra la tabella dei conti e il primo bilancio preso in esame e facciamo doppio click. Si aprirà il form per la specifica delle “Proprietà del join” da cui sceglieremo l’opzione che ci permette di includere tutti i record della “tabella dei conti” e solo i record della “Tabella bilanci” in cui i campi sono collegati.

In realtà verranno inclusi tutti i record di tutti i bilanci presi in considerazione poiché, come più volte ribadito, abbiamo avuto cura di importare una tabella dei conti che contenesse tutti, ma proprio tutti, i conti che a vario titolo erano stati utilizzati nella nostra azienda negli ultimi anni.

Ripeteremo l’azione di specifica delle proprietà del join per tutti i bilanci presenti.

A questo punto non ci resta che selezionare i campi da visualizzare nella query: dalla tabella dei conti prenderemo il codice e la descrizione del conto, dalle altre tabelle solamente i valori economici dell’anno di riferimento.

La situazione dovrebbe presentarsi grosso modo come nella figura che segue:

Figura 5. Query finale

Query finale

Non ci resta che premere il pulsante “Visualizzazione” in alto a sinistra per visualizzare il risultato del nostro lavoro.

Potremo quindi procedere all’analisi delle dinamiche degli andamenti storici di costi e ricavi sia continuando a lavorare in Access, filtrando la query appena creata, oppure creando ulteriori query basate sulla principale.