Bonjour,
J'ai une application qui travaille sur des gros fichiers en réseau or, il arrive parfois que l'espace disque dur du réseau soit saturé. Comment via le VBA avoir un indicateur avec la capacité restante ?
Merci
Bonjour,
J'ai une application qui travaille sur des gros fichiers en réseau or, il arrive parfois que l'espace disque dur du réseau soit saturé. Comment via le VBA avoir un indicateur avec la capacité restante ?
Merci
Bonjour
La lecture de cet article http://warin.developpez.com/access/fichiers/ devrait te donner des indications, au chapitre I-B-3.
Starec
Merci Starec,
ça marche voici le code ou W: represente l'alias réseau
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 Sub test() Dim resultat As Long resultat = EspaceDisque("W:") If resultat < 20000000 Then Call MsgBox("L'espace de travail sur le disque réseau est trop faible pour y lancer l'intégration des bilans. Actuellement vous disposez de " & Format(resultat, "### ### ###") & " octets", vbExclamation, "Attention") Call MsgBox("Veuillez contrôler cette espace et le purger ", vbExclamation, "Attention") Exit Sub End If ' suite ' bla bla bla bla End Sub
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 Function EspaceDisque(disque As String) As Long Dim oFSO As Scripting.FileSystemObject Dim oDrv As Scripting.Drive 'Instanciation du FSO Set oFSO = New Scripting.FileSystemObject 'Instanciation d'un objet drive correspondant au disque C If oFSO.DriveExists(disque) = True Then Set oDrv = oFSO.Drives(disque) 'Exit Sub Else MsgBox "Ce disque n'existe pas, veuillez verifier le chemin du réseau nommé " & disque End If ' If oDrv.IsReady = False Then MsgBox "Nom du disque nommé " & disque & " inconnu" EspaceDisque = 0 Exit Function Else EspaceDisque = oDrv.FreeSpace End If ' End Function
comment employer le nom du réseau du style \\serveur\partage\truc\troc ?
Car l'alias W: n'est pas forcement bien définit sur tous les postes
Tu peux aussi regarder à TotalSize dans l'aide en ligne, voici l'exemple donné
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11 Sub AfficheEspace(drvpath) Dim fs, d, s Set fs = CreateObject("Scripting.FileSystemObject") Set d = fs.GetDrive(fs.GetDriveName(fs.GetAbsolutePathName(drvpath))) s = "Lecteur " & d.DriveLetter & ":" s = s & vbCrLf s = s & "Taille totale : " & FormatNumber(d.TotalSize/1024, 0) & " Kilo-octets" s = s & vbCrLf s = s & "Disponible : " & FormatNumber(d.AvailableSpace/1024, 0) & " Kilo-octets" MsgBox s End Sub
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager