Excel formula: normalizējiet lieluma vienības līdz gigabaitiem -

Vispārēja formula

=LEFT(A1,LEN(A1)-2)/10^((MATCH(RIGHT(A1,2),("PB","TB","GB","MB","KB"),0)-3)*3)

Kopsavilkums

Lai normalizētu vienības līdz gigabaitiem (vai megabaitiem, kilobaitiem utt.), Varat izmantot gudru formulu, kuras pamatā ir funkcijas MATCH, LEFT un RIGHT. Parādītajā piemērā formula C5 ir:

=LEFT(B5,LEN(B5)-2)/10^((MATCH(RIGHT(B5,2),("PB","TB","GB","MB","KB"),0)-3)*3)

Piezīme: vienkāršības labad mēs izmantojam decimāldaļas (bāzes 10) vērtības, taču ir arī binārs standarts. Skatīt zemāk.

Paskaidrojums

Svarīgi: šī formula pieņem, ka vienības ir virknes pēdējās 2 rakstzīmes, kas ietver gan skaitli, gan mērvienību.

Šī formula darbojas, jo digitālajām vienībām ir "jauda 10" attiecības.

Būtībā šī formula atdala izmēra skaitlisko daļu no vienības, pēc tam dala skaitli ar atbilstošo dalītāju, lai normalizētos gigabaitos. Dalītāju aprēķina kā jaudu 10, tāpēc formula līdz tam samazina:

=number/10^power

Lai iegūtu skaitli, formula izraksta visas rakstzīmes no kreisās puses līdz vienībām, bet neietver tās:

LEFT(B5,LEN(B5)-2)

Lai iegūtu "jaudu", formula vienībā sakrīt ar kodētu masīva konstanti:

MATCH(RIGHT(B5,2),("PB","TB","GB","MB","KB"),0)

Kas atgriež vienības pozīciju masīva konstante. Piemēram, formulai C5 vienība ir "KB", tātad pozīcija ir 5. Šis rezultāts tiek koriģēts, atņemot 3, pēc tam rezultātu reizinot ar 3, kas dod 6 kā jaudu, ko izmanto kā eksponentu lai aprēķinātu pareizo rezultātu gigabaitos:

=900/10^6 =900/1000000 =0.0009

Binārā standarta formula

Dati izmanto bināro skaitļu sistēmu, lai saglabātu un ziņotu par datu lielumu, taču tādi prefiksi kā "kilo", "mega", "giga" utt. Ir balstīti uz metrisko sistēmu. Tā ir mulsinoša tēma, taču decimālā lieluma vienību izmantošana glabāšanai datorā nav īsti pareiza, un neatbilstība palielinās, vienībām kļūstot lielākām. Tālāk sniegtā formula tiks normalizēta līdz binārām vienībām.

=LEFT(A1,LEN(A1)-2)/2^((MATCH(RIGHT(A1,2),("PB","TB","GB","MB","KB"),0)-3)*10)

Izmantojot šo formulu, jūs tehniski iegūstat nevis gigabaitus, bet gibibaitus (GiB). Vairāk informācijas šeit un šeit.

Labas saites

Stackoverflow.com atbilde Rons Rozenfelds

Interesanti raksti...