
Formula generica
=LEFT(A1,LEN(A1)-2)/10^((MATCH(RIGHT(A1,2),("PB","TB","GB","MB","KB"),0)-3)*3)
Sommario
Per normalizzare le unità in gigabyte (o megabyte, kilobyte, ecc.) Puoi utilizzare una formula intelligente basata sulle funzioni CONFRONTA, SINISTRA e DESTRA. Nell'esempio mostrato, la formula in C5 è:
=LEFT(B5,LEN(B5)-2)/10^((MATCH(RIGHT(B5,2),("PB","TB","GB","MB","KB"),0)-3)*3)
Nota: per semplicità, stiamo usando valori decimali (base 10), ma esiste anche uno standard binario. Vedi sotto.
Spiegazione
Importante: questa formula presuppone che le unità siano gli ultimi 2 caratteri della stringa che include sia un numero che un'unità di misura.
Questa formula funziona perché le unità digitali hanno una relazione "potenza di 10".
Al centro, questa formula separa la parte numerica della dimensione dall'unità, quindi divide il numero per il divisore appropriato per normalizzarlo in Gigabyte. Il divisore è calcolato come una potenza di 10, quindi la formula si riduce a questo:
=number/10^power
Per ottenere il numero, la formula estrae tutti i caratteri da sinistra fino alle unità escluse:
LEFT(B5,LEN(B5)-2)
Per ottenere "potenza", la formula corrisponde all'unità in una costante di matrice hardcoded:
MATCH(RIGHT(B5,2),("PB","TB","GB","MB","KB"),0)
Che restituisce la posizione dell'unità nella costante dell'array. Ad esempio, per la formula in C5, l'unità è "KB", quindi la posizione è 5. Questo risultato viene corretto sottraendo 3, quindi moltiplicando il risultato per 3, che restituisce 6 come potenza, che viene utilizzata come esponente per calcolare il risultato corretto in gigabyte:
=900/10^6 =900/1000000 =0.0009
Formula standard binaria
I computer utilizzano il sistema numerico binario per archiviare e segnalare la dimensione dei dati, ma i prefissi come "kilo", "mega", "giga", ecc. Sono basati sul sistema metrico. È un argomento confuso, ma l'utilizzo di unità di dimensione decimale per l'archiviazione su un computer non è proprio corretto e la discrepanza aumenta con l'aumentare delle unità. La formula seguente si normalizzerà in unità binarie.
=LEFT(A1,LEN(A1)-2)/2^((MATCH(RIGHT(A1,2),("PB","TB","GB","MB","KB"),0)-3)*10)
Con questa formula, tecnicamente ottieni Gibibyte (GiB), non Gigabyte. Maggiori informazioni qui e qui.