Salva nella cartella con nome



  • Salva nella cartella con nome
    di Ermes.Maz (utente non iscritto) data: 10/01/2015 23:22:10

    Buonasera a tutti,

    Ho creato un file con 7 fogli lunedi, martedi mercoledi ecc...

    Sul foglio lunedi nella cella C5 c'è la scritta SETTIMANA in E5 un numero esempio 3

    Io vorrei che tramite macro, aprendo il mio file, mi salvi in automatico l'intero progetto nella cartella servizi del desktop con il nome SETTIMANA 3

    È possibile cio????

    Grazie



  • di Vecchio Frac data: 11/01/2015 09:07:46

    Ma perchè non utilizzate la Guida di Excel?
    Non dico curiosare con F2 nel modello ad oggetti, che magari è un po' complicato da capire, ma scrivere in immediata "thisworkbook" e premere F1 per vedere cosa succede non è così astruso :)

    L'oggetto ThisWorkbook (o anche "Questa_cartella_di_lavoro" nella orribile italianizzazione) espone i metodi SaveAs (che ha molte più proprietà per il salvataggio) e SaveCopyAs che nel tuo caso è preferibile perchè lavora anche con l'istanza aperta ed è rapido nel fare il duplicato del file:
    thisworkbook.SaveCopyAs "c:users ome_utentedesktopservizi" & sheets("lunedì").range("C5") & " " & sheets("lunedì").range("E5")





  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 13:03:45

    Con tutto il rispetto Vecchio Frac...

    Se fossi capace di utilizzare Excell non sarei qui a chiedervi aiuto



  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 13:11:12

    tant'è vero che da questa stringa...

    thisworkbook.SaveCopyAs "c:users ome_utentedesktopservizi" & sheets("lunedì").range("C5") & " " & sheets("lunedì").range("E5")

    non sono in grado di fre il vba che servew a me......



  • di Raffaele_53 (utente non iscritto) data: 11/01/2015 13:34:06

    ....l'estenzione?
    Da provare.
    Desideri salvarlo con le macro? 1° codice
    Senza le macro? 2° codice
     
    Sub SALVA_FILE()
    Dim percorso As String, nome As String
    percorso = ActiveWorkbook.Path & ""
    nome = Sheets("lunedì").Range("C5") & "_" & Sheets("lunedì").Range("E5")
    ActiveWorkbook.SaveAs Filename:=percorso & nome & ".xlsm", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    'ActiveWorkbook.Close se devi anche chiudere il file
    End Sub
    
    Sub SALVA_FILE()
    Dim percorso As String, nome As String
    percorso = ActiveWorkbook.Path & ""
    nome = Sheets("lunedì").Range("C5") & "_" & Sheets("lunedì").Range("E5")
    Application.DisplayAlerts = False
    ActiveWorkbook.SaveAs Filename:=percorso & nome & ".xlsx", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    Application.DisplayAlerts = True
    'ActiveWorkbook.Close se devi anche chiudere il file
    End Sub



  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 14:00:06

    Grazie Raffaele...

    Appena possibile proverò i codici.

    Che differenza c'è dal primo al secondo??

    Io ho excel 2003 quindi mi sa che la "m" nell'estensione non ci voglia



  • di raffaele_53 (utente non iscritto) data: 11/01/2015 14:08:11

    Allora il 1° codice togliendo la m
    Puoi anche cambiare la riga in --->ActiveWorkbook.SavecopyAs Filename:=percorso & nome & ".xls"



  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 14:18:22

    Ci proverò appena possibile.

    Ancora grazie di cuore



  • di Vecchio Frac data: 11/01/2015 15:02:47

    cit. "Se fossi capace di utilizzare Excell non sarei qui a chiedervi aiuto"
    ---> Ma sì Ermes, non era un rimprovero, solo un invito a provare e riprovare.

    Comunque credo che ti abbia confuso il fatto che ho specificato "c:users ome_utentedesktopservizi" nel percorso del file da salvare (era un esempio da adattare ovviamente: del resto tu avevi detto " nella cartella servizi del desktop"), mentre Raffaele è stato più preciso e ha ricavato il percorso direttamente dal tuo file attuale.






  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 16:00:04

    Ho creato il modulo e copiato il vba sotto...

    ma mi dice

    Errore di runtime '1004':

    Metodo 'SaveAs' dell'oggetto '_Workbook' non riuscito



     
    Sub SALVA_FILE()
    Dim percorso As String, nome As String
    percorso = ActiveWorkbook.Path & ""
    nome = Sheets("lunedì").Range("C5") & "_" & Sheets("lunedì").Range("E5")
    ActiveWorkbook.SaveAs Filename:=percorso & nome & ".xls", FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False
    'ActiveWorkbook.Close se devi anche chiudere il file
    End Sub



  • di Vecchio Frac data: 11/01/2015 16:25:41

    Il foglio "lunedì" esiste nella cartella di lavoro?
    Comunque credo che l'errore sia nel parametro FileFormat del metodo SaveAs.
    Omettilo e dovrebbe andare bene (perchè salvi in XML?)
     
    ActiveWorkbook.SaveAs Filename:=percorso & nome & ".xls"
    - OPPURE -
    ActiveWorkbook.SaveCopyAs Filename:=percorso & nome & ".xls"






  • di Raffaele_53 (utente non iscritto) data: 11/01/2015 16:30:37

    lunedì scritto con i oppure ì finale? Stesso nome del foglio?

    Quando l'hai corretto posizionati sul codice e premi F8 per 3 volte
    Passa il mouse sopra la parola "nome" e vedi se ha acquisito i valori delle due celle

    Prova usare --->ActiveWorkbook.SavecopyAs Filename:=percorso & nome & ".xls"



  • di Raffaele_53 (utente non iscritto) data: 11/01/2015 16:41:53

    Intendevo I normale o accentata? Comunque uguale al nome foglio

    >>>SaveAs ...., FileFormat non deve dare errore
    >>>Savecopy ....invece senza nulla

    Ciao VF
    >>>(perchè salvi in XML?)
    Sta usando 2003, perciò sarà ".xls" (cosa c'entra XML?
    )



  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 18:12:17

    corretto.... provato con il tasto F8 e mi da questo errore

    Impossibile trovare
    'C:UserErmesDesktopServiziSETTIMANA_4.xls,
    FileFormat:=xlOpenXMLWorkbook, CreateBackup:=False'. Controllare
    l'ortografia del nome del file e verificare che la posizione del file sia
    corretta.

    La posizione è corretta.... ma non crea il file SETTIMANA_4



  • di Ermes.Maz (utente non iscritto) data: 11/01/2015 21:51:03

    Risolto grazie al.consiglio di Vecchio Frac.

    Grazie di cuore a tutti amici!!!!!