Come ha detto nessuno, essendo una variabile devi utilizzarla senza virgolette, in quanto quelle le utilizzi per definire una stringa.
Inoltre, vorre farti notare che quel leggi_chiave = True è inutile.
In genere si usa una funzione simile alla tua per lavorare su una variabile passata come parametro ByRef, in modo da poter assegnare alla funzione un valore di ritorno booleano, per definire l'esisto delle operazioni in essa contenute.
Nel tuo caso ritorni un esisto positivo ancora prima di eseguire le operazioni contenute nella funzione, ossia a prescindere dalla presenza di errori che potrebbero interrompere il procedimento.
Io vedrei più corretto un try catch che raccolga un'eventuale eccezione e in tal caso ritornare False, altrimenti True.
|