Quando si utilizza una formula per unire il contenuto di più celle in una cella, Kris ha problemi a far sì che Excel conservi la formattazione delle celle originali. Si supponga, ad esempio, che le celle A1 e B1 contengano rispettivamente 1 e 0,33. Nella cella C1, inserisce la seguente formula:

=A1 & " : " & B1

Il risultato nella cella C1 è simile a questo:

1:0.3333333333

Il motivo per cui il C1 risultante non corrisponde a quanto mostrato in B1 (0,33) è perché il valore in B1 non è realmente 0,33. Internamente, Excel mantiene i valori a 15 cifre, in modo che se la cella B1 contiene una formula come = 1/3, internamente questa viene mantenuta come 0,33333333333333. Ciò che vedi nella cella B1, tuttavia, dipende da come è formattata la cella. In questo caso, la formattazione è probabilmente impostata per visualizzare solo due cifre oltre il punto decimale.

Tuttavia, esistono diversi modi per ottenere i risultati desiderati nella cella C1. Un metodo consiste nel modificare semplicemente un po ‘la formula in modo che i valori estratti dalle celle A1 e B1 siano formattati. Ad esempio, il seguente esempio utilizza la funzione TEXT per eseguire la formattazione:

=TEXT(A1,"0") & " : " & TEXT(B1,"0.00")

In questo caso, A1 è formattato per visualizzare solo numeri interi e B1 è formattato per visualizzare solo due cifre decimali. Puoi anche usare la funzione ROUND per ottenere un risultato simile:

=ROUND(A1,0) & " : " & ROUND(B1,2)

Un’altra possibile soluzione è modificare il modo in cui Excel gestisce la precisione nella cartella di lavoro. Segui questi passaggi:

  1. Visualizza la finestra di dialogo Opzioni di Excel. (In Excel 2007, fare clic sul pulsante Office e quindi su Opzioni di Excel. In Excel 2010 o versione successiva, visualizzare la scheda File della barra multifunzione e quindi fare clic su Opzioni.)

  2. Fare clic sull’opzione Avanzate a sinistra della finestra di dialogo.

  3. Scorri le opzioni disponibili fino a visualizzare la sezione Durante il calcolo di questa cartella di lavoro. (Vedi figura 1.)

  4. Verificare che la casella di controllo Imposta precisione come visualizzata sia selezionata.

  5. Fare clic su OK.

Ora, Excel utilizza la precisione mostrata sullo schermo in tutti i suoi calcoli e concatenazioni invece di eseguire calcoli con la precisione a 15 cifre completa che normalmente mantiene. Sebbene questo approccio possa essere accettabile per alcuni utenti, per altri presenterà più problemi di quanti ne risolva. Dovrai determinare se puoi vivere con la precisione inferiore per ottenere l’output formattato come ti aspetti.

Ancora un altro approccio consiste nel creare la propria funzione definita dall’utente che restituirà ciò che viene visualizzato per la cella di destinazione, piuttosto che ciò che è memorizzato lì. La seguente macro funzionerà alla grande a questo proposito:

Function FmtText(rng As Range)

Application.Volatile     FmtText = rng.Cells(1).Text End Function

Per usare questa macro, dovresti usare una formula come questa nel tuo foglio di lavoro:

=FmtText(A1) & " : " & FmtText(B1)

_Nota: _

Se desideri sapere come utilizzare le macro descritte in questa pagina (o in qualsiasi altra pagina dei siti ExcelTips), ho preparato una pagina speciale che include informazioni utili.

ExcelTips è la tua fonte di formazione economica su Microsoft Excel.

Questo suggerimento (8886) si applica a Microsoft Excel 2007, 2010, 2013, 2016, 2019 ed Excel in Office 365. Puoi trovare una versione di questo suggerimento per la vecchia interfaccia del menu di Excel qui: