|
Domanda.
nome=Pasquale
cognome=Caliano
versione=2000
conosco2=medio
macro=SI
email=p.caliano@vesuviana.it
Ciao Ennio, ti ringrazio per il tuo tempestivo interessamento che mi hanno
consentito con i tuoi consigli di risolvere il grosso dei problemi, la cosa
che non mi riesce č quella di assegnare la variabile "name_file" come nome
del file.xls che deve copiare, mi dice sempre errore di sintassi. Ti allego
la routine.
N.B il contenuto della cella K29 a cui mi riferisco nella routine contiene
una data nel formato gg/mm/aaaa
Grazie
Ciao
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
Dim name_file As String
name_file = Range("K29").Value
ActiveWorkbook.SaveAs Filename:="C:\Caliano_P\ServizioStra\Backup Cond Etr\"
&name_file& ".xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWindow.Close
End Sub
Risposta.
l'errore viene dal fatto che non si possono MAI
usare nomi che contengo barre ( / ). Quindi, o
scegli e provi con il formato cella gg-mm-aaaa
(con i trattini), oppure estrai con Mid il
giorno il mese e l'anno in modo da ottenere ggmmaaaa
(senza divisori tra i dati). per esempio:
name_file = Mid(Range("K29"),1, 2) + Mid(Range("K29"),4,
2) + Mid(Range("K29"),7)
poi, nella riga:
Filename:="C:\Caliano_P\ServizioStra\Backup Cond Etr\"
&name_file& ".xls",
ci vogliono gli spazi tra le & commerciali e il nome, cosė:
Filename:="C:\Caliano_P\ServizioStra\Backup Cond Etr\"
& name_file & ".xls",
poi non mi ricordo se la tua versione 2000 accetta i nomi con spazi (vedi :
Backup Cond Etr), nel caso leggiti sull'altro sito, sezione vba, il
paragrafo: "Nomi con spazi vuoti".
Ora sei a posto, fammi sapere e leggiti il sito, ciao ennius
|