Visualizzazione dei risultati da 1 a 6 su 6
  1. #1

    Sto cercando una funzione (Verifica se directory è vuota)..

    Ciao Ragazzi,
    mi aiutate un attimino?
    sto cercando una funzione che mi dice se una cartella è vuota o non...

    Vi ringrazio anticipatamente
    Ciao
    Luigi

  2. #2
    Utente di HTML.it L'avatar di Mabi
    Registrato dal
    May 2002
    Messaggi
    1,245
    Se è vuota significa che non c'è nessun file... quindi ti basta andare a prenedere il nome di un file della cartella e verificare che non sia una stringa vuota .
    codice:
    Dim FileName As String
    Dim Directory As String
    
    Directory = "C:\Documenti\"
    
    FileName = Dir(Directory & "*.*")
    If FileName = "" Then
      MsgBox "Nessun file nella cartella " & Directory
    Else
      MsgBox "La cartella " & Directory & " non è vuota"
    End If
    Ciao !

  3. #3

    Rettifica

    Ciao,
    scusami ma non mi sono spiegato bene,
    a me serve sapere anche se non ci sono sottocartelle.

    quindi, piu' che altro, mi serve sapere se possiede o non sottocartelle.....

    Ti ringrazio.
    Ciao.

  4. #4

    SubFolders di FSO:

    Private Sub Form_Load()
    Dim elemFolder As Variant
    Dim folder As String
    Set fso = CreateObject("Scripting.FileSystemObject")
    Set subFldrs = fso.GetFolder("C:\Documenti\icon").subfolders
    For Each elemFolder In subFldrs
    If Not InStr(1, elemFolder, "\") Then
    folder = "La cartella è piena."
    Else
    folder = "La cartella è vuota."
    End If
    Next
    MsgBox folder
    End Sub
    jabjoint

  5. #5
    'Quella di prima non va bene questa si:

    Dim fso As Object
    Dim elemFolder As Variant
    Dim x As Boolean

    Set fso = CreateObject("Scripting.FileSystemObject")
    Set subFldrs = fso.GetFolder("C:\Documenti").subfolders

    For Each elemFolder In subFldrs
    x = True
    Next

    If x = True Then
    MsgBox "La cartella è piena"
    Else
    MsgBox "La cartella è vuota."
    End If
    jabjoint

  6. #6

    grazie....

    Ciao Ragazzi,
    grazie lo stesso per l'impegno, ma ho già risolto in altro modo e senza usare FSO (che mi è tra l'altro un po' antipatico...)

    Ecco a voi:

    'Controlla se una directory è vuota
    Function IsDirEmpty(sDir As String) As Boolean
    Dim bTrovatoFile As Boolean
    Dim bTrovatoDir As Boolean
    Dim sActFile As String

    bTrovatoDir = False

    bTrovatoFile = (Len(Dir(sDir & "*.*", vbNormal)) > 0)

    sActFile = Dir(sDir & "*", vbDirectory)

    Do While Not Len(sActFile) <= 0
    sActFile = Dir(, vbDirectory)
    If Not (sActFile = ".") And Not (sActFile = "..") Then
    bTrovatoDir = bTrovatoDir Or (Len(sActFile) > 0)
    End If
    Loop

    IsDirEmpty = Not bTrovatoDir And Not bTrovatoFile
    End Function

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.