Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite
Abbiamo guidato per diversi giorni la Alpine A290, la prima elettrica del nuovo corso della marca. Non è solo una Renault 5 sotto steroidi, ha una sua identità e vuole farsi guidare
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile
Abbiamo provato a fondo il nuovo Magic 8 Lite di HONOR, e per farlo siamo volati fino a Marrakech , dove abbiamo testato la resistenza di questo smartphone in ogni condizione possibile ed immaginabile. Il risultato? Uno smartphone praticamente indistruttibile e con un'autonomia davvero ottima. Ma c'è molto altro da sapere su Magic 8 Lite, ve lo raccontiamo in questa recensione completa.
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora
WF-1000X M6 è la sesta generazione di auricolare in-ear sviluppata da Sony, un prodotto che punta a coniugare facilità di utilizzo con una elevata qualità di riproduzione dei contenuti audio e una cura nella riduzione del rumore ambientale che sia da riferimento
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 18-12-2003, 16:45   #1
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
[VBA] ricerca di file su tutto il disco

qui è un inizio di codice che ho ricavato da un esempio sulla documentazione

Problema: si ferma solo alla prima directory: se qualcuno avesse voglia di modificare questo codice in modo che la ricerca si estenda per tutto il disco, grazie




Codice:
Sub MostraFile()

i = 1: Range("a1:a500").Delete


Dim MyFile, MyPath, MyName

MyPath = "C:\"

MyName = Dir(MyPath, vbDirectory)

Do While MyName <> ""

    If MyName <> "." And MyName <> ".." Then
       
        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
                          
            Cells(i, 1).Select
            Selection.Font.ColorIndex = 41
            Cells(i, 1) = MyPath + MyName: i = i + 1
            
        Else
        
            Cells(i, 1) = MyPath + MyName: i = i + 1
            
        End If
        
    End If
    
    MyName = Dir
    
Loop

End Sub
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2003, 17:57   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Scusa, ma non ti basta una ricorsione ? Il problema è che non so come si passa il range...

Codice:
Sub MostraFile()

i = 1: Range("a1:a500").Delete

VisitaDir "C:\", i

End Sub

Sub VisitaDir(MyPath As String, i As ....)

Dim MyFile, MyPath, MyName


MyName = Dir(MyPath, vbDirectory)

Do While MyName <> ""

    If MyName <> "." And MyName <> ".." Then
       
        If (GetAttr(MyPath & MyName) And vbDirectory) = vbDirectory Then
                          
            Cells(i, 1).Select
            Selection.Font.ColorIndex = 41
            Cells(i, 1) = MyPath + MyName: i = i + 1
            VisitaDir MyPath + MyName, i            
         
        Else
        
            Cells(i, 1) = MyPath + MyName: i = i + 1
            
        End If
        
    End If
    
    MyName = Dir
    
Loop

End Sub
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 18-12-2003, 19:50   #3
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
certo cionci è proprio di una ricorsione che necessita lo script ma non ho tempo di guardarci addosso

se c'è qualcuno che ha già risolto ben venga
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 19-12-2003, 11:41   #4
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3741
dove cavolo stà l'errore ?


Codice:
Sub vai()

Range("a1:a50000").Delete

MostraFile "C:\", 1

End Sub

Function MostraFile(MyPath As String, i As Integer)

MyName = Dir(MyPath, vbDirectory)

Do While MyName <> ""

    If MyName <> "." And MyName <> ".." Then
       
        If (GetAttr(MyPath & MyName) And vbDirectory) <> vbDirectory Then
            Cells(i, 1) = MyPath + MyName: i = i + 1
        Else
            MostraFile MyPath + MyName + "\", i
            
        End If
        
    End If
    
    MyName = Dir
    
Loop
MostraFile MyPath, i
End Function
misterx è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Alpine A290 alla prova: un'auto bella che ti fa innamorare, con qualche limite Alpine A290 alla prova: un'auto bella che ti fa ...
Recensione HONOR Magic 8 Lite: lo smartphone indistruttibile e instancabile Recensione HONOR Magic 8 Lite: lo smartphone ind...
Sony WF-1000X M6: le cuffie in-ear di riferimento migliorano ancora Sony WF-1000X M6: le cuffie in-ear di riferiment...
Snowflake porta l'IA dove sono i dati, anche grazie a un accordo con OpenAI Snowflake porta l'IA dove sono i dati, anche gra...
Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo MSI Sistema Mesh Roamii BE Pro: il Wi-Fi 7 secondo M...
Caos F1 2026: 14 monoposto senza omologa...
Tesla festeggia il primo Cybercab prodot...
Desktop piccolo e potente? NZXT H2 Flow ...
Logan Paul vende la sua carta Pokemon &q...
Polestar spinge sull'acceleratore: arriv...
Nuovo record mondiale nel fotovoltaico: ...
L'ultimo baluardo cade: fine supporto pe...
'Il mondo non ha mai visto nulla di simi...
La Commissione europea mette sotto indag...
Arriva il primo computer quantistico ad ...
'Se lavori al PC sei a rischio': la prev...
Windows 11 introduce il supporto nativo ...
Apple AirDrop su Android: dopo Pixel 10,...
Upgrade PC senza spendere una fortuna: G...
Sistema di sblocco alla iPhone anche su ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 16:09.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v