J'ai une valeur dans une cellule qui est en octets. Mais personne ne peut lire 728398112238. Je dirais plutôt 678.37GB
Pour écrire une formule afin de la formater relativement facilement (en voici une: http://www.yonahruss.com/2007/02/format-Excel-numbers-as-gb-mb-kb-b.html =)
Mais existe-t-il un moyen de faire cela en tant que "format"? J'aimerais avoir le grand nombre dans la cellule, mais l'afficher sous un format lisible par l'homme.
Vous ne pouvez pas vraiment faire de calculs dans les fonctions de formatage d'Excel. Vous pouvez utiliser quelque chose comme ce qui suit pour faire une estimation approximative:
[<500000]#,##0" B ";[<500000000]#,##0,," MB";#,##0,,," GB"
En voici un que j'ai utilisé: -
[<1000000]0.00," KB";[<1000000000]0.00,," MB";0.00,,," GB"
Semble bien fonctionner.
Bien que les conditions de format Excel n’affichent que l’une des trois conditions liées à la taille du nombre (elles le codent comme "positif; négatif; zéro; texte" mais je préfère le voir comme: si isnumber et true; elseif est le nombre et false; elseif le nombre; elseif est le texte)
donc, pour moi, la meilleure réponse est celle de David ainsi que celle de Grastveit pour un autre format régional.
Voici ceux que j'utilise en fonction des rapports que je fais.
[<1000000]#,##0.00," KB";[<1000000000]#,##0.00,," MB";#,##0.00,,," GB"
[>999999999999]#,##0.00,,,," TB";[>999999999]#,##0.00,,," GB";#.##0.00,," MB"
[<1000000]# ##0,00 " KB";[<1000000000]# ##0,00 " MB";# ##0,00 " GB"
[>999999999999]# ##0,00 " TB";[>999999999]# ##0,00 " GB";# ##0,00 " MB"
Faites votre choix!
L'approche de formatage ci-dessus ne fonctionne que pour trois niveaux. KB, MB et GB utilisés ci-dessus. Ici, je l'ai étendu à six. Cliquez avec le bouton droit sur la ou les cellules et sélectionnez Formater les cellules. Sous l'onglet Nombre, sélectionnez Personnalisé. Ensuite, dans la zone Type:, mettez ce qui suit:
[<1000]##0.00" B";[<1000000]##0.00," KB";##0.00,," MB"
Puis sélectionnez OK. Cela couvre B, KB et MB. Ensuite, avec les mêmes cellules sélectionnées, cliquez sur le ruban Accueil, Mise en forme conditionnelle, Nouvelle règle. Sélectionnez Formater uniquement les cellules qui contiennent. Puis, ci-dessous, dans la description de la règle, Formater uniquement les cellules avec, Valeur de la cellule, supérieure ou égale à 1 000 000 (c'est-à-dire 9 zéros). Cliquez ensuite sur Format, onglet Numérique, Personnalisé, puis dans la zone Type:
[<1000000000000]##0.00,,," GB";[<1000000000000000]##0.00,,,," TB";#,##0.00,,,,," PB"
Sélectionnez OK et OK. Cette mise en forme conditionnelle ne prendra le relais que si la valeur est supérieure à 1 000 000 000. Et il s’occupera des gammes GB, TB et PB.
567.00 B
5.67 KB
56.70 KB
567.00 KB
5.67 MB
56.70 MB
567.00 MB
5.67 GB
56.70 GB
567.00 GB
5.67 TB
56.70 TB
567.00 TB
5.67 PB
56.70 PB
Tout ce qui est plus grand que PB apparaîtra simplement comme un plus gros PB, par exemple. 56 700 PB. Vous pouvez ajouter une autre mise en forme conditionnelle pour gérer des valeurs encore plus grandes, EB, etc.
Légère modification pour que cela fonctionne dans ma région, l’Europe (. Comme séparateur de milliers, virgule comme séparateur décimal):
[<1000000]#.##0,00" KB";[<1000000000]#.##0,00.." MB";#.##0,00..." GB"
Toujours le même problème sur la conversion de données (1000! = 1024), mais cela fait le travail pour moi.
Je ne connais aucun moyen de le faire afficher en gigaoctets binaires (multiples de 1024 * 1024 * 1024), mais vous pouvez le faire afficher en gigaoctets décimaux en utilisant un format tel que:
0.00,,,"Gb"
La formule ci-dessus nécessite un signe moins dans la première ligne: "= IF (A1 <-999500000000"
=IF(A1<-999500000000,TEXT(A1,"#,##.#0,,,"" TB"""),
IF(A1<-9995000000,TEXT(A1,"#,##.#0,,,"" GB"""),
IF(A1<-9995000,TEXT(A1,"#,##0,,"" MB"""),
IF(A1<-9995,TEXT(A1,"#,##0,"" KB"""),
IF(A1<-1000,TEXT(A1,"#,##0"" B """),
IF(A1<0,TEXT(A1,"#,##0"" B """),
IF(A1<1000,TEXT(A1,"#,##0"" B """),
IF(A1<999500,TEXT(A1,"#,##0,"" KB"""),
IF(A1<999500000,TEXT(A1,"#,##0,,"" MB"""),
IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" GB"""),
TEXT(A1,"#,##.#0,,,,"" TB""")))))))))))
Une autre solution consiste à utiliser la notation technique. (C'est comme la notation scientifique sauf que l'exposant est toujours un multiple de 3.) Cliquez avec le bouton droit de la souris sur la ou les cellules et sélectionnez Formater les cellules. Sous l'onglet Nombre, sélectionnez Personnalisé. Ensuite, dans la zone Type:, mettez ce qui suit:
##0.00E+00
Puis cliquez sur OK. Au lieu de K, M, etc., vous aurez +3, +6, etc. Cela fonctionnera pour les nombres positifs et négatifs, ainsi que pour les exposants positifs et négatifs, -3 est m, -6 est u, etc.
567.00E-06
5.67E-03
56.70E-03
567.00E-03
5.67E+00
56.70E+00
567.00E+00
5.67E+03
56.70E+03
567.00E+03
5.67E+06
[<1000] 0 "Go"; [> 999] 0,0, "TB"
OR
[<1000] 0 "GB"; [> = 1000] 0.0, "TB"
J'utilise CDH hadoop et lorsque j'exporte un rapport Excel, j'ai deux problèmes;
1) convertir la date Linux en date Excel,
Pour cela, ajouter une colonne vide à côté de la colonne date permet de dire que la ligne du haut est B4, coller sous la formule et faire glisser le NOIR "+" jusqu'au dernier jour de votre fin de la colonne. Puis cache la colonne d'origine
=(((B4/1000/60)/60)/24)+DATE(1970|1|1)+(-5/24)
2) Conversion de la taille du disque d'octet en To, en Go et en Mo
La meilleure formule pour cela est la suivante:
[>999999999999]# ##0.000,,,," TB";[>999999999]# ##0.000,,," GB";# ##0.000,," MB"
il vous donnera des valeurs avec 3 décimales juste formater les cellules -> Personnaliser et coller le code ci-dessus
Je pense que beaucoup de réponses ici sont périmées, car je n’ai pas obtenu le résultat attendu de la réponse donnée.
Si vous avez une valeur en Ko que vous souhaitez formater en fonction de la taille, vous pouvez essayer ce qui suit.
[<1000]#" KB ";[<1000000]#0,00 " MB";0,## " GB"
952
=> 952 KB
1514
=> 1.51 MB
5122323
=> 5.12 GB
Après avoir lu les réponses, nous venons d’améliorer la formule pour obtenir des décimales pour les valeurs les plus grandes et prendre en charge les valeurs négatives.
=IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" TB"""),
IF(A1<-9995000000,TEXT(A1,"#,##.#0,,,"" GB"""),
IF(A1<-9995000,TEXT(A1,"#,##0,,"" MB"""),
IF(A1<-9995,TEXT(A1,"#,##0,"" KB"""),
IF(A1<-1000,TEXT(A1,"#,##0"" B """),
IF(A1<0,TEXT(A1,"#,##0"" B """),
IF(A1<1000,TEXT(A1,"#,##0"" B """),
IF(A1<999500,TEXT(A1,"#,##0,"" KB"""),
IF(A1<999500000,TEXT(A1,"#,##0,,"" MB"""),
IF(A1<999500000000,TEXT(A1,"#,##.#0,,,"" GB"""),
TEXT(A1,"#,##.#0,,,,"" TB""")))))))))))