Auto Esportazione su CSV

di il
7 risposte

Auto Esportazione su CSV

Salve a tutti, sono nuovo quì quindi premetto subito che se ho sbagliato settore per il thread è perchè sono poco avvezzo al forum.

Vi spiego la mia situazione:
ho un grosso file xlsm che fa il suo lavoro perfettamente. C'è al suo interno una tabella con dei dati settimanali divisi per giorni della settimana (riga "LUNEDì", riga "MARTEDì", etc.). Il file viene aggiornato una volta a settimana da un utente e/o saltuariamente in caso di problematiche.

Problema:
Vorrei che creasse un CSV in automatico senza che qualcuno lanci la macro.
A file chiuso dovrebbe lanciare questa sub, che riporto sotto, che fa quel che mi serve:
Sub saveRangeToCSV()

    Dim myCSVFileName As String
    Dim myWB As Workbook
    Dim tempWB As Workbook
    Dim rngToSave As Range

    Application.DisplayAlerts = False
    On Error GoTo err

    Set myWB = ThisWorkbook
    myCSVFileName = myWB.Path & "\" & "Il_Mio_Nome_File" & ".csv"

    Set rngToSave = Range("K72:U76")
    rngToSave.Copy

    Set tempWB = Application.Workbooks.Add(1)
    With tempWB
        .Sheets(1).Range("A1").PasteSpecial xlPasteValues
        .SaveAs Filename:=myCSVFileName, FileFormat:=xlCSV, CreateBackup:=False
        .Close
    End With
err:
    Application.DisplayAlerts = True
End Sub
Lanciandola a mano funziona, quindi tutto ok.
Ho provato ad aggiungere questa Sub sotto:
Sub Automatico()

    Call saveRangeToCSV
    'ontime fissa orario operazione
    Application.OnTime TimeValue("17:00:00"), "Automatico"

End Sub
Ma non mi lancia il comando in automatico quando dovrebbe avviarsi.

Qualcuno ha consigli o suggerimenti?
(non chiedo il codice voglio solo capire dov'è il mio errore!)

7 Risposte

  • Re: Auto Esportazione su CSV

    Ho appena testato anche questo codice:
    Application.OnTime Now + TimeValue("00:00:10"), "saveRangeToCSV"
    lancio la macro a file aperto per vedere se succede qualcosa.
    Ho salvato la Sub saveRangeToCSV su un file omonimo (saveRangeToCSV .vba) nella stessa cartella dell'xlsm e dopo 10 secondi come richiesto mi da come errore:

    Impossibile eseguire la macro ''...(percorso e nome file).xlsm'!saveRangeToCSV'. E' possibile che tale macro non sia disponibile nella cartella di lavoro o che tutte le macro siano disattivate.

    Non so più dove sbattere la testa da 3 giorni
  • Re: Auto Esportazione su CSV

    Non ho capito la premessa ... con un file "chiuso" non attivi un bel niente. Per eseguire il file questo deve essere aperto.
  • Re: Auto Esportazione su CSV

    Credo di aver sopperito creando un file batch con esecuzione programmata gioranliera che apre a avvia lo script salvato in VBS....credo,sto facendo i test
  • Re: Auto Esportazione su CSV

    Puoi programmare direttamente l'avvio del vbs senza passare dal batch
  • Re: Auto Esportazione su CSV

    In realtà non mi avvia ne il vbs ne il bat....e non capisco perchè

    il file bat è semplicemente
    @call cscript "%~dp0funzione.vbs"
    avviato a mano funziona...ma non mi va la task schedule.
    praticamente rimane in stato "In esecuzione" e non mi parte la chiamata al VBS
  • Re: Auto Esportazione su CSV

    Qui il crossposting è vietato

    "hwupgrade.it/forum/showthread.php?t=2901473"

    Vedi regolamento da leggere prima di postare
  • Re: Auto Esportazione su CSV

    Ah ok scusate. stavo solo cercando di risolvere il mio problema allora chiudete pure quì
Devi accedere o registrarti per scrivere nel forum
7 risposte