Occupation d'un volume disue

Le
Gérard
Bonjour,

Je voudrais savoir s'il existe une fonction en VB qui
permet de vrifier le taux d'occupation d'un volume
disque, car je fais de l'enregistrement automatique de
classeur Excel.
Si le disque est rempli plus de 80%, juste avant
l'enregistrement, je souhaite prvenir l'oprateur qu'il
va falloir envisager de faire un peu de mnage.

Si cette fonction n'existe pas, Y a t il quelqu'un qui a
dvelloper quelque chose de similaire?

Merci d'avance

Grard
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
RaMa
Le #362531
Bonjour

à adapter

Private Declare Function SHGetDiskFreeSpace Lib "shell32" Alias
"SHGetDiskFreeSpaceA" (ByVal pszVolume As String, pqwFreeCaller As Currency,
pqwTot As Currency, pqwFree As Currency) As Long
Private Sub Form_Load()
'KPD-Team 2000
Dim FreeCaller As Currency, Tot As Currency, Free As Currency
SHGetDiskFreeSpace "C:", FreeCaller, Tot, Free
MsgBox "Free space to caller: " + Format$(FreeCaller * 10000,
"###,###,###,##0") + vbCrLf + _
"Total space: " + Format$(Tot * 10000, "###,###,###,##0") + vbCrLf +
_
"Free space: " + Format$(Free * 10000, "###,###,###,##0")
End Sub


--
RaMa
"Gérard" news:841101c40349$6b9fb0a0$
Bonjour,

Je voudrais savoir s'il existe une fonction en VB qui
permet de vérifier le taux d'occupation d'un volume
disque, car je fais de l'enregistrement automatique de
classeur Excel.
Si le disque est rempli à plus de 80%, juste avant
l'enregistrement, je souhaite prévenir l'opérateur qu'il
va falloir envisager de faire un peu de ménage.

Si cette fonction n'existe pas, Y a t il quelqu'un qui a
dévelloper quelque chose de similaire?

Merci d'avance

Gérard
Michel Pierron
Le #362898
Bonjour Gérard;
Sub DiskInfos()
Dim fs, d
Set fs = CreateObject("Scripting.FileSystemObject")
Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName("C:")))
MsgBox "Lecteur " & d.DriveLetter & ":" & vbLf _
& "Taille totale : " & vbTab & FormatNumber(d.TotalSize / 1024, 0) _
& " Kilo-octets" & vbLf & "Disponible : " & vbTab _
& FormatNumber(d.AvailableSpace / 1024, 0) & " Kilo-octets"
End Sub

MP

"Gérard" news:841101c40349$6b9fb0a0$
Bonjour,

Je voudrais savoir s'il existe une fonction en VB qui
permet de vérifier le taux d'occupation d'un volume
disque, car je fais de l'enregistrement automatique de
classeur Excel.
Si le disque est rempli à plus de 80%, juste avant
l'enregistrement, je souhaite prévenir l'opérateur qu'il
va falloir envisager de faire un peu de ménage.

Si cette fonction n'existe pas, Y a t il quelqu'un qui a
dévelloper quelque chose de similaire?

Merci d'avance

Gérard
Frédéric Sigonneau
Le #362843
Bonjour,

Une autre approche possible :

'===================== Sub test()
MsgBox TauxOccupation("c:")
End Sub

Function TauxOccupation(Lecteur)
With CreateObject("Scripting.FileSystemObject")
With .GetDrive(.GetDriveName(Lecteur))
TauxOccupation = _
Format((.totalsize - .freespace) / .totalsize, "0.##%")
End With
End With
End Function
'=====================
FS
--
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://perso.wanadoo.fr/frederic.sigonneau
Si votre question sur Excel est urgente, évitez ma bal !

Gérard a écrit:
Bonjour,

Je voudrais savoir s'il existe une fonction en VB qui
permet de vérifier le taux d'occupation d'un volume
disque, car je fais de l'enregistrement automatique de
classeur Excel.
Si le disque est rempli à plus de 80%, juste avant
l'enregistrement, je souhaite prévenir l'opérateur qu'il
va falloir envisager de faire un peu de ménage.

Si cette fonction n'existe pas, Y a t il quelqu'un qui a
dévelloper quelque chose de similaire?

Merci d'avance

Gérard


Publicité
Poster une réponse
Anonyme