Il Metodo GoalSeek. (corrisponde al metodo: Ricerca Obiettivo) - pagina vista: volte

Questo metodo, invero poco usato (o forse poco conosciuto) e dissimile dalla Funzione SolverSolve, consente di calcolare i valori necessari per raggiungere un determinato obiettivo. Il calcolo lo svolge Excel, e ci risparmia un bel pò di lavoro e di impostare tutta una serie di formule e formulette.

Ho avuto anch'io poche occasioni di usarlo, ma vista la sua innegabile utilità, presento un lavoretto fatto un pò di anni fa, che spiegherà come impiegarlo. In quell'occasione la necessità era quella di comparare la convenienza tra un'auto diesel ed una a benzina. Fornendo i parametri necessari che diversificano due modelli di auto, e stabilendo sia un periodo di ammortamento espresso in mesi, più l'ipotetico chilometraggio da percorrere mensilmente, si ottiene una risposta su quale dei due tipi di alimentazione risulta più conveniente. Chiaramente aumentando il chilometraggio, il vantaggio iniziale dell'auto a benzina lascia posto alla più conveniente auto a diesel.

Ma se volessimo sapere quale è il chilometraggio in cui i due costi si equivalgono (quindi la differenza nei costi scende a zero) ?

Vediamo intanto il programma e due spiegazioni :

In questa tabella non sono stati presi in considerazione i costi relativi alla eventuale manutenzione, ma solo i costi documentabili fissi, che sono comunque sufficienti a fornire le risposte richieste; quattro sono i costi richiesti:

  • Prezzo d'acquisto dei due veicoli. (in genere tra due vetture, stessa marca e modello, alimentazione diversa)

  • Consumo dichiarato (o presunto) espresso in km/lt

  • Costo del carburante al lt.

  • Costo assicurazione al mese.

L'Ammortamento mensile e il Costo Mensile complessivo vengono calcolati in automatico al variare dei quattro parametri visti sopra, e dei valori che scriveremo in B10 (numero mesi in cui vorremo ammortizzare l'auto) e in B11 (quanti km al mese faremo o prevediamo di fare): è per effetto di quest'ultimo valore che otterremo variazioni nei Costi Mensili e quindi le differenze lette nella riga 7.

E' la cella G7 , che tramite una semplice formula =G5-G4 , ci restituisce il valore che determina la versione più conveniente, ed è questo valore che useremo come termine di confronto nell'uso del metodo GoalSeek. vediamo ora la sintassi del metodo GoalSeek:

  • espressione.GoalSeek(Goal, ChangingCell)

dove:

  • con "espressione" dobbiamo indicare un oggetto Range, cioè il riferimento ad una cella.

  • Goal  - primo argomento necessario, e indica il valore che vorremo restituito in una cella.

  • ChangingCell  - secondo argomento necessario, e dobbiamo indicare il riferimento alla cella il cui valore dovrà essere modificato per raggiungere il valore espresso con Goal.

In pratica, visto che vorremo sapere quanti km mensili (cella B11) dovremmo percorrere per ottenere come differenza zero (cella G7), la nostra istruzione sarà:

  • applica il metodo GoalSeek alla cella G7

  • come Goal vogliamo sia restituito zero (0)

  • la cella in cui va modificato il valore è la B11

quindi:

  • Range("G7").GoalSeek Goal:=0, ChangingCell:=Range("B11")

Da notare che il metodo GoalSeek va sfruttato se l'obiettivo è rappresentato dal risultato restituito da una (o più) formula. Infatti in questo caso, il valore nella cella G7 è un valore ottenuto per effetto di formule in cui anche il valore della cella B11 viene usato come argomento;  un pò come (i puristi mi scuseranno) se si dovesse usare un "riferimento circolare", cioè uno degli elementi che compongono la formula (B11) viene ricalcolato fino a che un'altro elemento della formula (G7) non raggiunge il numero desiderato (il Goal).

Ovviamente il risultato è garantito sia che il valore ottenuto in G7 sia positivo che negativo. Allego comunque il file per la lettura delle formule contenute nelle celle. Il foglio è protetto dalla password "pippo" solo per evitare che si modifichino involontariamente le formule; è possibile scrivere solo nelle celle relative ai parametri modificabili.

 

File consultabile e scaricabile:

nome file dimensione n.download
costiauto.zip 9 Kb

 

prelevato sul sito www.ennius.altervista.org