Salva nella cartella con nome
Hai un problema con Excel? 
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!!!!!
Vuoi Approfondire?