VBA: Creazione di una cartella (run time error 76)

mercoledì 16 ottobre 2013 - 10.56
Tag Elenco Tags  Windows 7  |  SQL Server Express  |  Access (.mdb)  |  Office 2007

CorriCorrado Profilo | Junior Member

Ciao a tutti,
non riesco a capire a cosa sia correlato l'errore (run time error 76 - Path does not exists).

Utilizzo un ciclo per creare una serie di cartelle in base ad alcuni record selezionati in una query.
Do Until rs.EOF strTA_ID = rs!CarName & "\" & rs!TA strDirectoryPath = Me.txtPathTAAmd & "\" & strTA_ID 'Debug.Print strDirectoryPath If FileFolderExists(strDirectoryPath) = False Then MkDir strDirectoryPath rs.MoveNext Loop

La funzione per controllare se la cartella esiste:
Public Function FileFolderExists(strFullPath As String) As Boolean On Error GoTo EarlyExit If Not Dir(strFullPath, vbDirectory) = vbNullString Then FileFolderExists = True EarlyExit: On Error GoTo 0 End Function

L'errore che mi ritorna è provocato da
strTA_ID = rs!CarName & "\" & rs!TA

Se sostiuisco con:
strTA_ID = rs!CarName & "_" & rs!TA

le cartelle vengono create.

Il risultato è che invece che avere 1 directory per ogni carrier, quindi la directory per ogni TA, avrò un solo livello di directory:
Carrier1_TA1
Carrier1_TA2

Se riuscite ad aiutarmi a capire, vi ringrazio molto.

Corrado

renarig Profilo | Expert

Mi sa che con il codice che hai scritto il sistema "Tenta" di crearti una cartella di nome "Pippo\Pluto"
chiaramente il caratere "\" non è ammesso nei nomi cartella

tu invece vuoi 2 cartelle
- 1 di nome "Pippo"
- 1 di nome "Pluto"

Devi organizzare dei SubCicli

Dacci qualche dettaglio in piu sul recordset di origine e sul numero di livelli che vuoi

.

CorriCorrado Profilo | Junior Member

Ciao,
hai ragione! Trovato l'errore.

Voglio creare due livelli:
nel primo ciclo creo la cartella Livello 1, che corrisponde al 'carrier'

Costruisco quindi un secondo ciclo che va a crare all'interno della directiory 'carrier' l'insieme di contratti!

Grazie mille, mi hai messo sulla strada giusta.
Corrado
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5