La fonction TailleFichieroKoMoGo permet de récupérer la taille d'un fichier à la façon de l'Explorateur Windows. C'est-à-dire d'utiliser l'unité appropriée (octet, Ko, Mo, Go), de limiter le nombre de chiffres après la virgule selon le nombre de chiffres avant la virgule, de ne pas arrondir (juste tronquer), ...
Source / Exemple :
Public Function TailleFichieroKoMoGo(Chemin As String) As String
Dim Taille
Dim Valeur
Taille = FileLen(Chemin)
If Taille >= 1024 Then
Taille = Taille / 1024
If Taille >= 1024 Then
Taille = Taille / 1024
If Taille >= 1024 Then
Taille = Taille / 1024
If Asc(StrReverse(Left(Taille, 4))) = 44 Then
Valeur = Left(Taille, 3)
Else
Valeur = Left(Taille, 4)
End If
TailleFichieroKoMoGo = Valeur & " Go"
Else
If Asc(StrReverse(Left(Taille, 4))) = 44 Then
Valeur = Left(Taille, 3)
Else
Valeur = Left(Taille, 4)
End If
TailleFichieroKoMoGo = Valeur & " Mo"
End If
Else
If Asc(StrReverse(Left(Taille, 4))) = 44 Then
Valeur = Left(Taille, 3)
Else
Valeur = Left(Taille, 4)
End If
TailleFichieroKoMoGo = Valeur & " Ko"
End If
Else
If Taille < 2 Then
Valeur = " octet"
Else
Valeur = " octets"
End If
TailleFichieroKoMoGo = Taille & Valeur
End If
End Function
Conclusion :
Vu l'extrème simplicité du code, je n'ai pas mis de commentaires.
REMARQUE : Dans certains cas, la valeur retournée par la fonction ne correspondra pas exactement à celle de l'Explorateur Windows. C'est normal !!! J'ai décidé d'utiliser 1024 comme référence pour le passage à l'unité supérieure.