Tratto dallo speciale:

Ammortamento dei cespiti con Access

di Nicola Santangelo

7 Marzo 2013 09:00

Come gestire i cespiti e calcolare la quota di ammortamento, il fondo accantonato, l'eventuale plusvalenza/minusvalenza e la sopravvenienza passiva.

Gli elementi patrimoniali destinati a essere utilizzati da un’impresa per più esercizi devono essere sottoposti ad un processo di ammortamento, secondo coefficienti stabiliti dal Fisco. Questo perché l’utilità del bene non si esaurisce nello stesso esercizio in cui è stato acquisito ma piuttosto si ripercuote anche sugli esercizi futuri.


Scarica il modello

Sono oggetto di ammortamento le immobilizzazioni materiali (fabbricati, macchinari, impianti, automezzi, attrezzature, mobili), quelle immateriali (brevetti, marchi, costi di riceva, di sviluppo e di pubblicità) e quelle finanziarie (partecipazioni).

Con Access è possibile realizzare un database che consenta la gestione dei cespiti e relativi ammortamenti. Oltre a eseguire l’accantonamento annuale secondo la quota percentuale, il database evidenzia il fondo ammortamento accantonato e, nel caso di vendita o dismissione, la rispettiva plusvalenza/minusvalenza e la sopravvenienza passiva.

=> Vai al foglio di calcolo per l’ammortamento ordinario di cespiti

Dopo avere creato un nuovo database inseriamo la tabella Categorie poiché ogni bene ammortizzabile deve essere associato ad una categoria. Èuna tabella molto semplice, composta dall’unico campo chiamato Categoria, tipo testo, dimensione campo 32, chiave primaria, indicizzato con duplicati non ammessi.

La seconda tabella da creare si chiamerà Cespiti e conterrà tutti i beni ammortizzabili dell’impresa. Sarà composta dai seguenti campi:

  • Matricola, tipo testo, dimensione campo 32, indicizzato con duplicati non ammessi; Cespite, tipo testo, dimensione campo 128, Chiave primaria, indicizzato con duplicati non ammessi;
  • Categoria, necessario per creare una relazione con l’omonima tabella, tipo testo, dimensione campo 32, indicizzato con duplicati ammessi;
  • Data_Acquisto, tipo Data/Ora, formato Data in cifre; Coefficiente, dovrà contenere la percentuale di ammortamento, tipo numerico, dimensione campo Byte, posizioni decimali 0, richiesto Sì;
  • Costo_Storico, tipo numerico, dimensione campo Precisione doppia, formato Valuta, posizioni decimali 2, richiesto Sì;
  • per rendere il database più completo e ricco, potremmo inserire un campo testuale con dati fornitore e dettagli fattura;
  • Vendita (che conterrà il prezzo dell’eventuale vendita necessario per determinare la plusvalenze/minusvalenza), tipo Numerico, formato Valuta, posizioni decimali 2, richiesto Sì;
  • Dismesso (necessario per calcolare la sopravvenienza passiva), tipo Sì/No, formato Sì/No.

Dopo aver selezionato il campo Categoria e aver visualizzato la pagina Ricerca fra le Proprietà campo, selezioniamo il controllo Casella combinata, tipo di origine riga Tabella/query, origine riga Categorie, colonna associata 1, numero colonne 1.

=> Vai alla Guida al bilancio aziendale

Infine è necessario creare la tabella Ammortamenti che, relazionata con la tabella Cespiti permetterà di registrare, anno dopo anno, gli ammortamenti di ogni cespite.

La tabella sarà così composta:

  • IdAmmortamento, tipo Contatore, dimensione campo Intero lungo, nuovi valori Incremento, indicizzato con duplicati non ammessi, Chiave primaria;
  • Cespite, tipo Testo, dimensione campo 128, indicizzato con duplicati ammessi;
  • Anno, tipo Testo, dimensione campo 4;
  • Rivalutazioni, tipo Numerico, dimensione campo Precisione doppia, formato Valuta, posizioni decimali 2, richiesto Sì (in questo campo verranno inserite eventuali rivalutazioni del cespite: si pensi ad esempio alla manutenzione straordinaria di un immobile e all’esigenza di non imputare i costi a conto economico ma piuttosto portarli a incremento del costo storico del cespite);
  • Svalutazioni, tipo Numerico, dimensione campo Precisione doppia, formato Valuta, posizioni decimali 2, richiesto Sì;
  • Ammortamento (in questo campo sarà indicata la quota di ammortamento annua), tipo Numerico, dimensione campo Precisione doppia, formato Valuta, posizioni decimali 2, richiesto Sì.

La struttura del database è completa.

Ora creiamo le relazioni fra le varie tabelle: accedere alla voce Relazioni dal menu Strumenti; inserire le tabelle appena create e relazionare il campo Categoria della tabella Categorie con l’omonimo campo della tabella Cespiti e quindi relazionare il campo Cespite della tabella Cespiti con l’omonimo campo della tabella Ammortamenti.

Entrambe le relazioni dovranno essere del tipo Uno-a-molti. Dovrà, inoltre, essere applicata l’integrità referenziale e selezionate le opzioni Aggiorna campi correlati a catena ed Elimina record correlati a catena.

Per creare le maschere utilizzeremo l’autocomposizione. L’Autocomposizione Maschera rende più veloce il processo di creazione di una maschera eseguendo in modo automatico tutte le operazioni fondamentali. Il processo di autocomposizione richiede all’utente determinate informazioni affinché la maschera venga creata secondo le proprie esigenze.

Per cominciare creeremo la maschera da associare alla tabella Categorie. Per fare questo dobbiamo selezionare l’unico campo esistente e premere su Avanti fino a completamento dell’operazione.

La struttura della maschera relativa ai cespiti sarà leggermente più complessa rispetto a quella appena creata poiché sarà costituita da una testata e da un dettaglio. Avviare la procedura di Autocomposizione Maschera e selezionare la tabella Cespiti, quindi selezionare tutti campi disponibili. Ripetere l’operazione con la tabella Ammortamenti selezionato tutti i campi eccetto Cespite e IdAmmortamento. La visualizzazione dei dati dovrà avvenire in base a Cespiti.

Il layout da applicare alla sottomaschera sarà Tabulare.

Completata la procedura di Autocomposizione è necessario visualizzare la maschera Ammortamenti in struttura e inserire nel Piè di pagina tre caselle di testo necessarie a contenere il totale delle rivalutazioni, il totale delle svalutazioni e il fondo ammortamento.

La casella destinata a contenere il totale delle rivalutazioni sarà rinominata Tot_Rival e conterrà la seguente formula: =Somma([RIVALUTAZIONI])

La casella destinata a contenere il totale delle svalutazioni sarà rinominata Tot_Sval e conterrà la seguente formula:
=Somma([SVALUTAZIONI])

La casella destinata a contenere il fondo ammortamento sarà rinominata Fdo_Amm e conterrà la seguente formula:
=Somma([AMMORTAMENTO])

I campi appena creati dovranno avere le seguenti proprietà: formato Valuta, posizioni decimali 2, valore predefinito 0, bloccato Sì.

Per fare in modo che il database calcoli automaticamente la quota da ammortizzare, visualizzare in struttura la maschera Ammortamenti, inserire un pulsante di comando chiamato Cmd_Calcola e visualizzare il menu con il tasto destro del mouse, quindi accedere su Genera evento…

Sarà visualizzata la maschera Scegli generatore. Selezionare Generatore di codice, quindi premere il pulsante OK. Comparirà l’editor di Visual Basic. Dopo la dichiarazione Option Explicit inserire il seguente codice:

Private Sub CMD_CALCOLA_Click()

AMMORTAMENTO.SetFocus

AMMORTAMENTO.Text = (Forms![CESPITI]![COSTO_STORICO] + [TOT_RIVAL] – [TOT_SVAL]) * Forms![CESPITI]![COEFFICIENTE] / 100

End Sub

Private Sub RIVALUTAZIONI_LostFocus()

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

End Sub

Private Sub SVALUTAZIONI_LostFocus()

DoCmd.DoMenuItem acFormBar, acRecordsMenu, 5, , acMenuVer70

End Sub

Salvare e chiudere l’editor.Il database è quasi completo. Inseriremo un campo contenente il residuo da ammortizzare e altri due campi che conterranno rispettivamente la plusvalenza/minusvalenza generata dalla vendita e la sopravvenienza passiva generata dalla dismissione.

Visualizzare la maschera Ammortamenti in struttura. Inserire nel Piè di pagina una nuova Casella di testo chiamata Residuo. Nella proprietà Origine controllo inserire la seguente formula:

=[Forms]![CESPITI]![COSTO_STORICO]+[TOT_RIVAL]-[TOT_SVAL]-[FDO_AMM]

Inserire una nuova Casella di testo chiamata Plus_Minus contenente la seguente formula:

=IIf([Forms]![CESPITI]![VENDITA]>0;[Forms]![CESPITI]![VENDITA]-[RESIDUO];0)

Infine inserire una nuova Casella di testo chiamata Sopravvenienza contenente la seguente formula:

=IIf([Forms]![CESPITI]![DISMESSO]=Vero;[RESIDUO];0)

Le Caselle di testo dovranno avere le seguenti proprietà: formato Valuta, posizioni decimali 2, bloccato Sì.

L’utilizzo del database appena creato è semplice e intuitivo. Per ogni cespite è necessario inserire i relativi dati anagrafici e gli esercizi per i quali il bene risulta ammortizzato nonché l’eventuale rivalutazione o svalutazione del bene stesso. Il sistema provvederà, in automatico, a calcolare la quota di ammortamento sulla base del coefficiente indicato e ad alimentare il fondo di ammortamento. Nel caso in cui il bene sia venduto occorre inserire il prezzo di vendita per consentire il calcolo della plusvalenza o della minusvalenza. Se, invece, il bene esce dal processo produttivo e, quindi, viene dismesso occorre selezionare il campo Dismesso per consentire il calcolo dell’eventuale sopravvenienza.