"impossibile trovare il file"

di il
10 risposte

"impossibile trovare il file"

Ciao a tutti, 

ho un problema con un controllo creato su un database. Il pulsante chiudeva il database e contemporaneamente creava una copia di backup in un aspecifica cartella. Ora quando clicco compare il messaggio "impossibile trovare il file". Ho provato a verificare più volte i percorsi ma niente da fare. Tenete presente che il file si trova all'interno di una share aziendale (\\fsvmr03\) Potete aiutarmi? vi posto il codice e grazie per l'aiuto:

Private Sub Comando13_Click()
DoCmd.OpenQuery "Qry_ContaRivendite_alla_data"
'Chiude l'applicazione e fa una copia automatica
On Error GoTo Err_Comando13_Click
Dim oldpath, newpath, archive As String
Dim filesys As Variant
Dim dtsei
Dim mesprec
Dim miopath As String

Set filesys = CreateObject("Scripting.FileSystemObject")

' path di origine del DB
Dim pdb As String
pdb = "\\fsvmr03\Gestione_Contratti\"
oldpath = pdb

archive = "GESTIONE RETE VENDITA-2022.accdb" ' nomefile del DB
dtsei = Right(Year(Now), 2) & _
Right("0" & Month(Now), 2) & _
Right("0" & Day(Now), 2)
' path destinazione DOVE CREARE UNA CARTELLA BACKUP
newpath = "\\fsvmr03\Gestione_Contratti\Backup Access\"
'*** Copia giornaliera ***
If Not (filesys.FolderExists(newpath)) Then filesys.createfolder (newpath)
filesys.CopyFile oldpath & archive, newpath & dtsei & "GESTIONE RETE VENDITA-2022.accdb", True

If (Left(DateSerial(Year(Now), Month(Now) + 1, 0), 2)) - (Day(Now)) = 0 Then filesys.CopyFile oldpath & archive, oldpath & "Backup Access\" & dtsei & "GESTIONE RETE VENDITA-2022.accdb", True
'POI OGNI 15 DEL MESE CANCELLA LE PRECEDENTI COPIE
If Day(Now) = 15 Then
mesprec = DateSerial(Year(Now), Month(Now) - 1, Day(Now))
miopath = (oldpath & "Backup Access\" & Right(Year(mesprec), 2) & Right("0" & Month(mesprec), 2))
If filesys.FolderExists(miopath) Then
filesys.DeleteFolder (oldpath & "Backup Access\" & Right(Year(mesprec), 2) & _
Right("0" & Month(mesprec), 2))
End If
End If
'Esporta la tabella PerAmministrazione in formato excel
DoCmd.TransferSpreadsheet acExport, acSpreadsheetTypeExcel9, "Tab_Elenco_Richieste", "\\fsvmr03\Gestione_Contratti\Backup Access\Elenco_Richieste.xls", True

DoCmd.Quit
Exit_Comando13_Click:
Exit Sub
Err_Comando13_Click:
MsgBox Err.Description
Resume Exit_Comando13_Click
End Sub

10 Risposte

  • Re: "impossibile trovare il file"

    27/06/2024 - Domotico ha scritto:


    filesys.CopyFile oldpath & archive, newpath & dtsei & "GESTIONE RETE VENDITA-2022.accdb", True

    Suppongo sia questa l'istruzione che restituisce l' errore.

    In questi caso occorre sempre fare un po' di debug.

  • Re: "impossibile trovare il file"

    Grazie per la risposta Antony, ma il debug non mi segnala errori di compilazione.

  • Re: "impossibile trovare il file"

    Ma dtsel è parte del nome del file o una cartella?

  • Re: "impossibile trovare il file"

    Buongiorno Oregon,

    dtsei non è ne parte del nome ne parte della cartella. Ho provato ad elimninare quella parte di codice, il messaggio non compare più, ma non effettua nessun salvataggio.

  • Re: "impossibile trovare il file"

    28/06/2024 - Domotico ha scritto:


    dtsei non è ne parte del nome ne parte della cartella

    Come no? Lo usi nella CopyFile

    Guarda, dato che il codice è confuso, scrivi chiaramente qui i percorsi di origine e destinazione completi e corretti

  • Re: "impossibile trovare il file"

    Buongiorno Oregon,

    dtsei non è ne parte del nome ne parte della cartella. Ho provato ad elimninare quella parte di codice, il messaggio non compare più, ma non effettua nessun salvataggio.

  • Re: "impossibile trovare il file"

    Se elimini quella parte di codice è ovvio che non compare l'errore: Non ti copia più nulla. Se li chiedi di non fare nulla tanto vale che lo elimini quel pulsante.

  • Re: "impossibile trovare il file"

    28/06/2024 - Domotico ha scritto:


    dtsei non è ne parte del nome ne parte della cartella. Ho provato ad elimninare quella parte di codice, il messaggio non compare più, ma non effettua nessun salvataggio.

    Scusa, ma allora perché lo usi?

    Comunque, ti avevo fatto una richiesta per capire meglio il tuo problema e cercare di risolverlo, ma se non vuoi …

  • Re: "impossibile trovare il file"

    Ciao Oregon,

    scusa sono stato impegnato. Comunque ho risolto e adesso funziona. Il motore del database non trovava il file perchè in una riga il nome del file era leggermente diverso. A seguito di aggiornamenti a volte rinomino il file in base all'anno di revisione.

    Grazie sempre dell'aiuto.

     
  • Re: "impossibile trovare il file"

    Ciao,

    ho lo stesso problema, “Error …53, impossibile trovare il file”

    Private Sub BACKUP_DB_Click()

    Set filesys = CreateObject("Scripting.FileSystemObject")

    ' path di origine del DB

    Dim pdb As String

    pdb = "D:\ARMURA"

    oldpath = pdb

    archive = "db.accdb" ' database

    dtsei = Right(Year(Now), 4) & _
    Right("0" & Month(Now), 2) & _
    Right("0" & Day(Now), 2)
    dtsei = Left(dtsei, 8) & "\"


    ' path destinazione DOVE CREARE UNA CARTELLA Giornaliera nella cartella BACKUP

    newpath = oldpath & "\Backup\"


    '*** Copia giornaliera ***

    If Not (filesys.FolderExists(newpath)) Then Set newfolder = filesys.createfolder(newpath)
    newpath = newpath & dtsei

    If Not (filesys.FolderExists(newpath)) Then Set newfolder = filesys.createfolder(newpath)
    filesys.CopyFile oldpath & archive, newpath & dtsei & "db.accdb", True
    ' esempio filesys.CopyFile oldpath & archive, newpath & dtsei & "GESTIONE RETE VENDITA-2022.accdb", True

    End Sub

    Grazie per l'aiuto!!!

Devi accedere o registrarti per scrivere nel forum
10 risposte