Ceci est une page optimisée pour les mobiles. Cliquez sur ce texte pour afficher la vraie page.

XL 2016 Créer format personnalisé pour milliers, millions, milliards

Etoto

XLDnaute Barbatruc
Bonjour,

Pour un fichier j'essaie de trouver comment faire un format personnalisé qui ferait cela :

1000 = 1 K
1500 = 1.5 K
1050 = 1.05 K
265000 = 2.65 M
999951 = 999.951 M
1000000000 = 1 B
etc.

Je sais que c'est possible mais je n'ai pas réussi à trouver ma solution sur le Web.
 
Solution
Ça dirait quoi en VBA ?
Cette fonction qui fait exactement la même chose que la formule précédente :
VB:
Function Milliers(x As Double) As String
Dim tablo(1 To 5, 1 To 2)
tablo(1, 1) = 1
tablo(2, 1) = 1000: tablo(2, 2) = "K"
tablo(3, 1) = 1000000: tablo(3, 2) = "M"
tablo(4, 1) = 1000000000: tablo(4, 2) = "B"
tablo(5, 1) = 1000000000000#: tablo(5, 2) = "T"
With Application
    Milliers = x / .Lookup(x, .Index(tablo, , 1)) & .VLookup(x, tablo, 2)
End With
End Function

Lolote83

XLDnaute Barbatruc
Re bonjour,
Bravo Job75. Le maestro a encore frappé.
J'ai même essayé de faire une fonction personnalisée, mais cela n'a rien donné. Je crois qu'il faut encore que je prenne des cours moi !!!!
Ça dirait quoi en VBA ?
@+ Lolote83
 

job75

XLDnaute Barbatruc
Ça dirait quoi en VBA ?
Cette fonction qui fait exactement la même chose que la formule précédente :
VB:
Function Milliers(x As Double) As String
Dim tablo(1 To 5, 1 To 2)
tablo(1, 1) = 1
tablo(2, 1) = 1000: tablo(2, 2) = "K"
tablo(3, 1) = 1000000: tablo(3, 2) = "M"
tablo(4, 1) = 1000000000: tablo(4, 2) = "B"
tablo(5, 1) = 1000000000000#: tablo(5, 2) = "T"
With Application
    Milliers = x / .Lookup(x, .Index(tablo, , 1)) & .VLookup(x, tablo, 2)
End With
End Function
 

Pièces jointes

  • Milliers VBA(1).xlsm
    16.3 KB · Affichages: 11

Etoto

XLDnaute Barbatruc
Wawwwww ! C''est encore mieux vu qu'il y a lus besoin d'avoir une plage de référence au RECHERCHEV. Parfait !
 

Discussions similaires

Les cookies sont requis pour utiliser ce site. Vous devez les accepter pour continuer à utiliser le site. En savoir plus…