Come posso risolvere “errore di run-time ‘1004’“ che compare alla fine di esecuzione di una macro in excel?

Anonimo
2023-02-07T14:31:57+00:00

Premetto che la macro "Aggiorna report.xlsm" ha sempre funzionato e che solo da qualche settimana viene eseguita e si interrompe all'ultimo file da aprire e prima di passare in altri file dentro eventuali subcartelle.

Questa l'immagine dell'errore:

In realtà il file "00_Budget Dedalus.xlsx" è il primo file dell'elenco da aggiornare e non è corrotto ma si apre normalmente e permette l'aggiornamento di tutti gli altri file.

Questa la descrizione del Debug:

Microsoft 365 e Office | Excel | Per il lavoro | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento
Risposta accettata dall'autore della domanda
Anonimo
2023-02-08T08:54:50+00:00

Ciao Alberto,

il file si chiude regolarmente così come gli altri 32 file coinvolti dalla procedura di aggiornamento, e non c'è neanche tra i file "nascosti".

Ieri ho provato ha eliminare il file "00_Budget Dedalus.xlsx" dall'elenco e ho avviato la macro di aggiornamento....Stranamente a fine procedura mi è comparso lo stesso messaggio di errore:

Immagine

anche se il file non c'era più in elenco!!!!!!!!!!

OK, senza ulteriori indagini, forse prova a aggirare il problema sostituendo la tua sezione di codice:

con qualcosa del genere:

For Each iFi1e In ifolder.Files 

    **If Not iFi1e.Name Like "\*$\*.xlsx" Then** 

        Call Aggiorna(iFi1e) 

    **End If** 

Next iFi1e 

For Each iSubFo1der In iFo1der.SubFo1ders 

    For Each nFi1e In iSubFo1der.Files 

        **If Not iFi1e.Name Like "\*$\*.xlsx" Then** 

            Call Aggiorna(nFi1e) 

        End If 

    **Next nFi1e** 

Next iSubFo1der 

===

Regards,

Norman

Immagine

La risposta è stata utile?

1 persona ha trovato utile questa risposta.
0 commenti Nessun commento

5 risposte aggiuntive

Ordina per: Più utili
  1. Anonimo
    2023-02-08T06:41:26+00:00

    Ciao Norman,

    il file si chiude regolarmente così come gli altri 32 file coinvolti dalla procedura di aggiornamento, e non c'è neanche tra i file "nascosti".

    Ieri ho provato ha eliminare il file "00_Budget Dedalus.xlsx" dall'elenco e ho avviato la macro di aggiornamento....Stranamente a fine procedura mi è comparso lo stesso messaggio di errore:

    anche se il file non c'era più in elenco!!!!!!!!!!

    La risposta è stata utile?

    0 commenti Nessun commento
  2. Anonimo
    2023-02-07T18:35:14+00:00

    Ciao Alberto,

    Premetto che la macro "Aggiorna report.xlsm" ha sempre funzionato e che solo da qualche settimana viene eseguita e si interrompe all'ultimo file da aprire e prima di passare in altri file dentro eventuali subcartelle.

    Questa l'immagine dell'errore:

    Immagine

    In realtà il file "00_Budget Dedalus.xlsx" è il primo file dell'elenco da aggiornare e non è corrotto ma si apre normalmente e permette l'aggiornamento di tutti gli altri file.

    Questa la descrizione del Debug:

    Immagine

    Il prefisso ~$ nel tuo messaggio di errore indica che si tratta di un file temporaneo creato da Windows all'apertura del file C:\00_Dati di budget Dedalus.xlsx. Questo file temporaneo viene normalmente eliminato da Windows quando il file viene chiuso. Quindi controlla che il file non sia già in uso prima di eseguire il tuo codice.

    ===

    Regards,

    Norman

    Immagine

    La risposta è stata utile?

    0 commenti Nessun commento
  3. Anonimo
    2023-02-07T15:00:27+00:00

    Ciao, grazie del riscontro.....ho corretto la domanda. Il file che esegue la macro è "Aggiorna report.xlsm"

    La risposta è stata utile?

    0 commenti Nessun commento
  4. Gianfranco55 25,270 Punti di reputazione Moderatore volontario
    2023-02-07T14:45:26+00:00

    ciao

    non me ne intendi di VBA

    però mi chiedo se il file è XSLX

    come diavolo fai ad avere delle macro attive

    dovrebbe essere XSLM

    La risposta è stata utile?

    0 commenti Nessun commento