Il modo più semplice per utilizzare questa funzione è iniziare con 'Registrazione di una macro'. Una volta iniziata la registrazione, salva il file nella posizione desiderata, quindi imposta il tipo di file, molto probabilmente 'Cartella Excel abilitata per macro' ~ 'XLSM'
Interrompe la registrazione e puoi inizia a controllare il tuo codice.
ho scritto il codice qui sotto, che consente di salvare una cartella di lavoro utilizzando il percorso in cui è stato originariamente trova il file, nomi come "Evento [data nella cella 'A1']"
Option Explicit
Sub SaveFile()
Dim fdate As Date
Dim fname As String
Dim path As String
fdate = Range("A1").Value
path = Application.ActiveWorkbook.path
If fdate > 0 Then
fname = "Event " & fdate
Application.ActiveWorkbook.SaveAs Filename:=path & "\" & fname, _
FileFormat:=xlOpenXMLWorkbookMacroEnabled, CreateBackup:=False
Else
MsgBox "Chose a date for the event", vbOKOnly
End If
End Sub
Copia il codice in un nuovo modulo e quindi scrivere una data nella cella "A1" ad es 01-01-2016 -> assegna il sub a un pulsante ed esegui. [Nota] è necessario creare un file di salvataggio prima che questo script funzioni, perché una nuova cartella di lavoro viene salvata nella posizione di salvataggio automatico predefinita!
fonte
2015-09-11 12:33:39
Grazie per l'aiuto! Finalmente ho ottenuto ciò che cercavo con il seguente: 'ActiveWorkbook.SaveCopyAs (" \\ filePath \ Programma di alimentazione \ FormFlow a MSExcel \ Archive \ FeedSampleReport- "& Format (Now()," mmddyyyy ") &" .xlsm ")' –
Ho usato il tuo codice con molto successo. Grazie! Un piccolo punto: l'uso del formato file di xlWorkbookNormal salva il file come cartella di lavoro di Excel 97-2003. Per salvare come cartella di lavoro .xlsx corrente devi usare xlOpenXMLWorkbook. Il mio codice: –
invece di usare i nomi (come xlWorkbookNormal), usa i numeri. Oppure potresti non essere in grado di compilare con un vecchio Excel alcune volte. Vedere http://www.rondebruin.nl/win/s5/win001.htm –