Bonjours,
j'ai un programme qui liste les dossiers et sous dossiers etc...
et qui me donne la taille en octet mais je voudrais mettre en méga quand c'est possible et en giga etc... que ce soit lisible car c'est destiné à une personne novice en informatique, et fait par un novice en vbs
Voila Mon CODE :
Ca aussi si ça peut aider :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36 Dim ShellO: Set ShellO = CreateObject("WScript.Shell") Dim FSO: Set FSO = CreateObject("Scripting.FileSystemObject") Dim SListe: Dim Schemin 'Dossier à traiter Schemin = InputBox("Entrer le chemin du dossier à lister :") 'Dossier Bureau de windows + "\" SListe = ShellO.SpecialFolders("Desktop") If Right(SListe, 1) <> "\" Then SListe = SListe & "\" 'Ouverture du fichier contenant l'arborescence du répertoire à traiter vers le Bureau Dim Fichier: Set Fichier = FSO.CreateTextFile(SListe & "Liste.html", 1, True) strHTML=strHTML & "<center><h2><B><font color=red>Liste des Dossiers et Sous-Dossiers dans " & Schemin & " et leurs tailles </font></B></h2></center>" & _ "<table border='3' cellpadding='10' style='border-collapse: collapse; font size:11pt' bordercolor='#CCCCCC' width='auto' id='Table1'>" & _ "<tr><td><strong>Chemin des Dossiers :</strong></td>" &_ "<td><strong>Taille en octet :</strong></td></tr>" 'Fichier.WriteLine (Schemin & "<br>") Fichier.WriteLine strHTML 'Ecrire la structure du Tableau en HTML ListerDossier Schemin, Fichier 'Remplissage dynamique des données dans le Tableau Fichier.WriteLine "</table>" 'ici on ferme notre tableau par la balise </table> 'Fermeture du fichier contenant l'arborescence du répertoire à traiter Fichier.Close Function ListerDossier(Schemin, Fichier) 'Lister l'arborescence du dossier On Error Resume Next Dim FSO: Set FSO = CreateObject("Scripting.FileSystemObject") Dim ObjRep: Set ObjRep = FSO.GetFolder(Schemin) 'dossier Dim ObjSubRep: Set ObjSubRep = ObjRep.SubFolders 'sous-dossiers Dim ObjSubRepItem For Each ObjSubRepItem In ObjSubRep 'Traiter chaque sous-dossiers Fichier.WriteLine ("<tr><td><a href='" & ObjSubRepItem.Path & "'>" & ObjSubRepItem.Path & "</td><td>" & ObjSubRepItem.Size & "</a></td></tr>") 'Ecrire le path dans les lignes du Tableau en HTML ListerDossier ObjSubRepItem.Path, Fichier 'traiter les sous-dossiers Fichier.WriteLine ObjSubFileItem.Path 'Ecrire le path dans la liste Next End Function
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 Function Unite(ByVal Taille As Double) As String Dim TabUnite 'On déclare une variable qui va être un tableau Dim i As Integer 'Un compteur TabUnite = Array("o", "Ko", "Mo", "Go", "To", "Po", "Eo", "Zo", "Yo") 'Le tbaleau de unités i = 0 'Initialisation du compteur Do While Taille >= 1024 And i < 8 'Début de la boucle Taille = Taille / 1024 'On divise i = i + 1 'on rajoute 1 au compteur Loop 'On retourne la taille convertie avec l'unité dans une string Unite = Round(Taille, 2) & " " & TabUnite(i) End Function
Partager