Discussione Ufficiale Budgeting - Spreadsheet per il monitoraggio del proprio patrimonio

Una Discussione Ufficiale punta a raccogliere tutte le informazioni su un argomento o un fatto di attualità, con costanti aggiornamenti da parte del creatore e dei partecipanti.

Valley

Super Moderatore
10 Aprile 2011
9,032
422
4,164
3,030
Ultima modifica:
titolo.jpg




Riprendendo le discussioni presenti sul budgeting presenti su inforge (es: Budgeting, è davvero così importante? e EXCEL | Monitoraggio dei portafogli / della finanza personale) apro questa discussione per presentare il nuovo progetto al quale mio sto dedicando in questo periodo (nei pochi momenti in cui non lavoro). Sto parlando di un file Google Sheet per il monitoraggio delle entrate e delle uscite, nonché del proprio patrimonio netto (net worth).

Tempo fa avevo iniziato a fare il nuovo file solo per me volendo iniziare a farne uno più serio di quello precedente. Nell'ultimo periodo però ho deciso di condividerlo creando così un file base fruibile da tutti.
Vi dico già che il file non è pronto :\ Come sempre penso che condividere assieme a voi lo sviluppo di questo possa essere interessante ed utile sia per me che per voi: più teste = più idee.

carson-arias-7Z03R1wOdmI-unsplash.jpg


Nessuno di noi è intelligente quanto tutti noi messi insieme
:yo:


L'idea sarebbe quindi quella di condividere con voi quello che sto facendo e quello che devo fare al fine di valutare assieme se ha senso, se si può fare meglio e se manca qualcosa.

Prima di partire è bene però comprendere alcuni termini:
Spreadsheet = file di Google Sheet
Sheet = un foglio di uno spreadsheet
Net worth = patrimonio netto
Expenses = uscite/spese/oneri
Income = entrate/proventi/rendite


rr.jpg

Iniziamo quindi a fare un po' il punto della situazione. Come dovrebbe essere il prodotto finale? Qual è il nostro obiettivo?​


1    Obiettivo

L'idea che ho in mente è quella di fare uno Spreadsheet base dal quale tutti possono crearsi la propria copia personale da utilizzare per monitorare il proprio patrimonio (da qui in avanti net worth o NW), le proprie spese e le entrate.


2    Struttura

L'idea è quella di fare un file che ricopre l'intero anno solare ed un secondo pluriennale che raccoglie alcuni dati dal primo file. Così facendo avremmo un file annuale per ogni anno solare ed un unico file pluriennale.
All'interno del file annuale ci saranno sheet per l'inserimento delle informazioni e sheet con tabelle riassuntive.
Il file pluriennale ancora non ho pensato come strutturarlo.


3    Strumenti

Google Sheet: l'idea è quella di utilizzarlo al posto di Excel per i (soliti) motivi qui sotto elencati.
  • Molto intuitivo.
  • In cloud, quindi:
    • backup automatico;
    • facile da condividere;
    • facile da consultare, in qualsiasi momento, su più dispositivi.
  • Funzione QUERY molto potente e facile da utilizzare.
  • Possibilità di creare funzioni con un interfaccia molto chiara e pulita.
  • Nessun problema di compatibilità a livello di sistema operativo.
  • Lo conosco meglio di excel (vale? :\).
Apps Script: la potenza dei file excel (e quindi dei spreadsheet) non sta solo nelle formule ma anche nelle funzioni. Quest'ultime danno la possibilità di fare praticamente di tutto. In particolare Apps Script permette di utilizzare JavaScript, Html e Css all'interno dei propri Spreadsheet, dandoci la possibilità di ampliare i nostri orizzonti.

Altro: ancora da definire in base a cosa ci servirà. Probabile ad esempio la necessità di utilizzare un servizio terzo per ottenere prezzi, valute, ecc.. Da valutare.


4    Premesse

Ci vuole il giusto schermo per lavorare bene: lo Spreadsheet sarà progettato per un utilizzo su schermo grande nelle "fasi di compilazione", quindi utilizzerò nei fogli anche la larghezza e non solo la lunghezza (scorrevole). Per le "fasi di consultazione" vedrò quanto e se sarà possibile farlo il più mobile friendly anche se penso lo strutturerò per una lettura comoda su schermo medio-piccolo e basta. Vedremo :ehm:


5    Cos’è stato fatto

Siccome il file ho intenzione di farlo in maniera tale che sia utile anche per i meno esperti (come me :V) ho pensato di iniziare dalle basi strutturando un primo sheet che racchiudesse tutte le entrate e le uscite.

5.1    Income/Expenses

Questo è stato il primo sheet che ho fatto e racchiude tutte le spese e tutte le entrate avvenute nell'anno solare. Lo sheet in questione l'ho chiamato "Income/Expenses" ed ho pensato di racchiudere le entrate e le uscite in un unico foglio in quanto questo verrà consultato solo in nei momenti di "compilazione", dopo i quali sarà generalmente ignorato. Non ha senso quindi occupare spazio nella barra di navigazione degli sheet con due fogli vuoti (in larghezza).

Schermata 2022-08-09 alle 21.35.46.png


Come vedete dall'immagine le uscite (per come sono progettate al momento) così come le entrate non occupano troppo spazio in larghezza. Siccome non si tratta di un foglio consultivo (come sono invece le tabelle riassuntive che vedremo più avanti) non abbiamo particolari esigenze di "ordine" e "pulizia", pertanto non avrebbe senso non sfruttare la larghezza (inoltre il file rimane comunque di facile lettura secondo me).

Le uscite (così come le entrare) sono strutturate come segue:
  • Data: la data in cui è stato effettuato lo spostamento.
  • Mese: il mese espresso in numero, generato automaticamente più avanti capirete a cosa serve.
  • Importo in euro: l'importo dello spostamento.
  • Descrizione: breve descrizione per identificare lo spostamento.
  • Categoria: gruppo principale essenziale per raggruppare le entrate/uscite così da renderle analizzabili.
  • Sottocategoria: gruppo secondario essenziale per analisi più dettagliate.

alto.jpg


5.1.1    Categorie

Come si può intuire l'idea è quella che l'utente vada ad inserire mese per mese le proprie uscite/entrate e le vada a raggruppare in categorie al fine di potere poi analizzare i dati. La domanda che quindi sorge è "come facciamo le categorie?".
Le categorie si potrebbe tranquillamente farle scrivere a mano ogni volta dall'utente, il problema in questo caso sarebbe dato dai possibili errori in fase di compilazione. Scrivere casa o Casa può generare due categorie differenti o solo una a seconda di come vengano fatti i filtri. Scordarsi la "s" in casa e quindi scrivere "Caa" comporterebbe un'altra categoria ancora (e così via).
Serve quindi un sistema che vincoli la scelta ad un determinato numero di valori prestabiliti. La soluzione? I nostri cari menu a tendina, chiamati con l'opzione "convalida dei dati" su Spreadsheet. Ottimo!

Ora però il problema era il menu a tendina per la sottocategoria. Non posso fare un menu unico che comprende tutte le sotto-categorie di tutte le categorie principali, verrebbe lunghissimo e difficile da consultare. È qui che ci viene in contro per la prima volta Apps Script (e Javascript) che ci permette di fare proprio questo. Sono così riuscito a fare un primo menu che alla modifica carica le sue sottocategorie.

Nota: in questa discussione cercherò di trattare solo gli aspetti progettuali al fine di ideare al meglio il file insieme a voi. Per la parte riguardante la programmazione invito a leggere quest'altra discussione (ancora non presente, verrà creata a breve).

C'era un ultimo problema da risolvere: ora ho due menu ordinati ma i valori di questi menu come li inserisco? Con che logica? Le categorie che metto io potrebbero differire da quelle di un altro utente, non siamo tutti uguali. Devo quindi trovare un modo per permettere ad ogni utente di generare le sue categorie e sottocategorie e far si che i menu prendano questi valori in automatico.

medio.jpg


5.2    » Expenses: Cat./Subcat. & » Income: Cat./Subcat.

Schermata 2022-08-10 alle 22.31.58.png
Risolvere questo problema è stato abbastanza facile grazie a due nuovi sheet chiamati:
  • » Expenses: Cat./Subcat.: abbreviazione di "Expenses: Categories/Subcategories".
  • » Income: Cat./Subcat.: abbreviazione di "Income: Categories/Subcategories".
Questi due sheet molto semplici altro non sono che due file di configurazione composti da due colonne. La prima identifica le categorie e la seconda le sottocategorie. Ogni utente nel proprio file potrà scrivere le sue ed i menu (grazie a semplici funzioni e alla funzione citata nella sezione precedente) prenderanno quei dati in automatico.

ezgif.com-gif-maker (5).gif

Nota: gli sheet di configurazione si identificano per il simbolo "»" posto ad inizio del nome del foglio.

Al momento lo sheet è ideato in modo tale che ogni sottocategoria debba avere scritto a fianco la propria categoria, anche se questa è uguale a quella presente nel record che la precede. Se quindi (come nello screen qui sopra) ho sia "Coop" che "Esselunga" come sottocategorie della categoria "Spesa", dovrò scrivere per entrambe "Spesa" nella prima colonna.

Abbiamo ora due sheet dove andare a scrivere le nostre categorie e sottocategorie, abbiamo uno sheet dove inserire le nostre entrate ed uscite, ci manca uno sheet per vedere un sommario di queste.

basso.jpg


5.3    Monthly Expenses / Monthly Income

Qui si è posto lo stesso problema di prima, ogni utente avrà le sue categorie, non posso quindi fare una semplice tabella con dei filtri tramite formule. Bisogna trovare un modo perché la tabella si compili in automatico sulla base delle categorie che l'utente inserisce.
Per fortuna anche qui AppsScript (o meglio Javascript) viene in nostro soccorso permettendoci di fare questo. Ho quindi deciso di fare due sheet:
  • Monthly Expenses: nel quale si genererà una tabella che racchiude le nostre spese divise per categorie. Sotto a questa ce ne sarà una seconda che divide le spese sia per categorie sia per sottocategorie.
  • Monthly Income: stesso discorso ma per quanto riguarda le entrate.
ezgif.com-gif-maker (1) (1).gif

La funzione che genera le tabelle prevede la possibilità di modificare le categorie e sottocategorie successivamente. Se ad esempio, dopo che abbiamo generato la tabella, decidiamo di aggiungere o rimuovere una categoria (o sottocategoria), basterà avviare la funzione e questa pulirà il foglio ed andrà a compilare di nuovo la tabella.

Attenzione: la rimozione di una categoria o sottocategoria comporterà la mancata visualizzazione di voci nelle spese/entrate che presentano quella categoria/sottocategoria. Se ne eliminate una quindi è molto importante che andiate nelle voci delle entrate/spese nel foglio "Income/Expenses" e selezionate una nuova categoria/sottocategoria per le voci che avevano quella eliminata.

Se aggiungete nuove voci nel foglio "Income/Expenses" le tabelle si aggiorneranno automaticamente.



6    Cosa si sta facendo

Al momento sto organizzando le idee (da qui la discussione) per organizzare quali sono i prossimi step da fare. Penso che il prossimo sheet che farò sarà quello del net worth. Devo però capire come farlo.


7    Cosa c'è da fare

  1. Traduzione completa del file in inglese: non esisterà una versione in italiano. È tempo di impararlo :\
  2. Sheet "Menu" per avviare le funzioni.
  3. Sheet (o più) per il net worth.
  4. Sheet (o più) per le statistiche.
  5. Nuova grafica per facilitare la lettura di tutti gli sheet. Da valutare pagine in html (per le pagine delle stats) per letture più sexcy.


8    Domande per voi!

  1. Secondo voi come dovrei fare il net worth? Che informazioni ci devono essere dentro?
  2. Secondo voi quali altri voci sarebbe utile che lo Spreadsheet comprendesse per il calcolo del net worth?
Grazie a chi risponderà e chi vorrà contribuire al progetto!




lego.png

make with by Valley
(o almeno ci provo :V)
 

MRPants

Helper
4 Gennaio 2015
145
20
126
160
Seguo con interesse!!

Sei in grado di fare un sheet che a seconda di alcuni parametri riesce a inviare delle mail a indirizzi gmail prescelti ? sarebbe molto utile per quelle aziende che devono mandare report in merito a fatturazioni o inventari
 

Valley

Super Moderatore
10 Aprile 2011
9,032
422
4,164
3,030
Seguo con interesse!!

Sei in grado di fare un sheet che a seconda di alcuni parametri riesce a inviare delle mail a indirizzi gmail prescelti ? sarebbe molto utile per quelle aziende che devono mandare report in merito a fatturazioni o inventari
Non ho mai provato ma se non ricordo male è possibile inviare mail con gli sheet quindi si, secondo me si riesce a fare ;)
 
  • Mi piace
Reazioni: MRPants