Newsgroup: it.comp.appl.access
Titolo: [semi OT] Salvataggio di dati in foglio Excel.

A2007.
Da codice apro un foglio .xlsx, scrivo dei dati e poi do il comando:
XLSheet.activeworkbook.SaveAs ConflictResolution:=1, FileName:="d:
\Profili-" & Year(Now()) & ".xlsx"
con il quale salvo in D:\ un file col nome, poniamo, Profili-2010.xslx
Quella voce ConflictResolution, stando all'Help in linea di Excel,
dovrebbe evitare che il programma chieda conferma del salvataggio se
un file con quel nome esiste già, ma il VBA di Access non dà segno di
riconoscerlo.
Ho provato a dargli valori da 1 a 3, come da Help, oppure usare le
relative costanti, per esempio xlLocalSessionChanges, che farebbe al
caso mio. In quest'ultimo caso ottengo errore di "Variabile non
trovata".
Ho messo fra i riferimenti Microsoft Excel 12.0 Object Library, che
prima non avevo ma mi erano possibili tutti gli altri comandi: non mi
ha più dato errore l'uso di xlLocalSessionChanges, ma il risultato è
identico.
Ho anche provato a mettere in fondo l'opzione; posso provare la danza
della pioggia.
Qualcuno sa come posso fare? (salvare il file, non fare la danza della
pioggia...)
Grazie a tutti.
Riccardo Baldinotti

 ha scritto nel messaggio 
news:9b4fd9b5-0c7f-4430...@z41g2000yqz.googlegroups.com...
A2007.
Da codice apro un foglio .xlsx, scrivo dei dati e poi do il comando:
XLSheet.activeworkbook.SaveAs ConflictResolution:=1, FileName:="d:
\Profili-" & Year(Now()) & ".xlsx"
con il quale salvo in D:\ un file col nome, poniamo, Profili-2010.xslx
Quella voce ConflictResolution, stando all'Help in linea di Excel,
dovrebbe evitare che il programma chieda conferma del salvataggio se
un file con quel nome esiste gi�, ma il VBA di Access non d� segno di
riconoscerlo.
Ho provato a dargli valori da 1 a 3, come da Help, oppure usare le
relative costanti, per esempio xlLocalSessionChanges, che farebbe al
caso mio. In quest'ultimo caso ottengo errore di "Variabile non
trovata".
Ho messo fra i riferimenti Microsoft Excel 12.0 Object Library, che
prima non avevo ma mi erano possibili tutti gli altri comandi: non mi
ha pi� dato errore l'uso di xlLocalSessionChanges, ma il risultato �
identico.
Ho anche provato a mettere in fondo l'opzione; posso provare la danza
della pioggia.
Qualcuno sa come posso fare? (salvare il file, non fare la danza della
pioggia...)
Grazie a tutti.
Riccardo Baldinotti
-------------  RISPOSTA  --------------
Sono andato a vedere nell'help di excel ed ho trovato questo:
      XlSaveConflictResolution pu� essere una delle seguenti costanti 
XlSaveConflictResolution.
      xlLocalSessionChanges. Le modifiche dell'utente locale sono sempre 
accettate.
      xlOtherSessionChanges. Le modifiche dell'utente locale sono sempre 
rifiutate.
      xlUserResolution. Viene visualizzata una finestra di dialogo che 
chiede all'utente di risolvere il conflitto.
Non c'� scritto a cosa corrispondano le varie voci, ma di solito partono da 
zero. Quindi, suppongo, che dovresti provare mettendo ConflictResolution:=0.
Ciao
Antonio

 Antonio
Ti ringrazio e mi scuso per il ritardo nella risposta.
I valori sono, nella sequenza, 1, 2 e 3, ma mi sono accorto di un
fatto curioso: la clausola non mi funziona neppure in una macro di
Excel, il che significa forse che abbiamo qualche settaggio
biricchino. Siccome non possiamo intervenire in alcun modo i miei
utenti si dovranno accontentare.
Avevo scritto un [semi OT] nell'oggetto, o almeno credevo.
Grazie ancora.
Riccardo Baldinotti