Come prevenire la formattazione automatica in formato data

In un foglio di lavoro, Carla ha una cella formattata in come “Contabilità”. Se qualcuno inserisce accidentalmente una data (gg/mm/aa) in quella cella, Excel modifica automaticamente la formattazione della cella per mostrare correttamente la data. Tuttavia, se tenta di inserire nuovamente un importo in euro in quella cella, essa non tornerà al formato “Contabilità”; la cella rimane nel formato Data. Questo non è grave se l’utente vede l’errore e lo corregge, ma molte volte questo accade in un modello con testo protetto senza accesso alle celle di formattazione. Carla chiede se qualcuno ha qualche idea sul perché questo accada e su come correggerlo.

Se desideri un modo rapido per impedire la modifica della formattazione in semplici fogli di lavoro, procedi nel seguente modo:

  1. Visualizza la finestra di dialogo Opzioni di Excel (in Excel 2007 fai clic sul pulsante Office e quindi su Opzioni di Excel. In Excel 2010 o versioni successive visualizza la scheda File della barra multifunzione e quindi fai clic su Opzioni).
  2. Sul lato sinistro della finestra di dialogo, fai clic su Impostazioni avanzate.
  3. Scorri fino in fondo alle opzioni.
  4. Assicurati che l’opzione Immissione delle formule come in Lotus sia selezionata.
  5. Fai clic su OK.

 

Come prevenire la formattazione automatica in formato data 1

 

Questa particolare opzione fa sì che Excel valuti (analizzi) le informazioni immesse allo stesso modo di Lotus 1-2-3. Ciò significa che le date non vengono più analizzate come date, ma come una formula. Pertanto, se qualcuno inserisce 16-11-13 in una cella, viene analizzato come “sedici meno undici meno tredici” e mostrato nella cella come -8. Poiché non è stato analizzato come data, il formato Contabilità viene lasciato associato alla cella, come desiderato.

Tuttavia, ci sono degli svantaggi in questo approccio. Poiché Excel successivamente analizza tutte le voci in base alle regole di Lotus, gli utenti potrebbero concludere che il foglio di lavoro non funziona correttamente poiché non segue le stesse regole degli altri fogli di lavoro di Excel. Questo è il motivo per cui ho detto che questo approccio può essere accettabile per semplici fogli di lavoro; dovrai determinare se il tuo foglio di lavoro è idoneo.

Se non si desidera modificare il modo in cui viene eseguita l’analisi, l’approccio migliore potrebbe essere quello di aggiungere alcuni gestori di eventi al foglio di lavoro. Ad esempio, potresti includere un gestore di eventi che controlla dove sono stati inseriti i dati e garantisce che eventuali modifiche a tali celle mantengano la formattazione desiderata.

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

ABBONATI

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

In questo esempio, la cella in cui si desidera mantenere il formato Contabilità è E2, come assegnato alla variabile rngToCheck. Se vuoi forzare il formato su un intervallo di celle diverso, cambia semplicemente la riga di assegnazione.

Se si desidera un po’ più di flessibilità, è possibile utilizzare un set diverso di gestori di eventi. Ad esempio, gli esempi seguenti utilizzano entrambi gli eventi SelectionChange e Change dell’oggetto Worksheet. Servono non tanto a forzare un formato particolare, quanto a impedire che la formattazione di una cella venga modificata rispetto a quella originaria. Pertanto, questo approccio protegge qualsiasi formattazione, non solo l’applicazione del formato Contabilità.

Questo contenuto è riservato agli abbonati

Solo gli utenti con Abbonamento VBA Coder oppure Ultimate possono visionarlo.

Se sei già abbonato Accedi per sbloccare il contenuto!

In caso contrario abbonati qui! L'abbonamento è conveniente.

E puoi interromperlo in ogni momento e in completa autonomia.

ABBONATI

(puoi renderti conto di quanti siano i contenuti riservati

raggiungendo questa pagina)

Il gestore dell’evento SelectionChange si attiva per primo, impostando il formato esistente nella variabile nFormat. Quindi il gestore dell’evento Change si attiva e reimposta la formattazione sull’originale.

Un altro approccio che potresti provare è utilizzare la Convalida dati. Questo approccio non richiede alcuna macro ed è quindi adatto se la tua cartella di lavoro verrà utilizzata da persone che potrebbero avere macro disabilitate sul proprio sistema. Segui questi passaggi generali:

  1. Seleziona la cella o le celle di cui desideri applicare la formattazione.
  2. Visualizza la scheda Dati della barra multifunzione.
  3. Fai clic sullo strumento Convalida dati nel gruppo Strumenti dati. Excel visualizza la finestra di dialogo Convalida dati.
  4. Utilizzando l’elenco a discesa Consenti, scegli Personalizzato.
  5. Nella casella Formula digita quanto segue: =CELLA(“formato”;B2)=”C2″
  6. Imposta eventuali altre impostazioni di convalida dei dati come desiderato.
  7. Fai clic su OK.

 

Come prevenire la formattazione automatica in formato data 2

 

La formula (passaggio 5) controlla la formattazione della cella e consente o meno l’immissione in base a tale formattazione. Nella formula citata, il formato C2 è il nome interno del formato Contabilità. Puoi facilmente modificare i codici nella formula in un altro formato, come “G“, “F2“, “D1“, “P2” o “S2” a seconda delle tue preferenze. Il modo più semplice per capire quale formato utilizzare è formattare una cella, come desideri, prima di applicare la regola di convalida dei dati (ad esempio, supponiamo che tu applichi la formattazione alla cella L13). Puoi quindi utilizzare questa formula in una cella diversa per vedere quale formato Excel ritiene di aver applicato:

=CELLA("formato";L13)

 

LE SCHEDE TECNICHE DELLE FUNZIONI UTILIZZATE

Tags: , , , , , , , , , , ,

Ti è stato utile?