Moderatori: Anthony47, Flash30005
ricky53 ha scritto:Ciao,
io ho avuto lo stesso problema ed ho risolto in questo modo:
1. ogni 30 minuti produco (tramite una macro specifica) dal file principale (sul quale lavoriamo solo in tre persone e mai contemporaneamente) un file opportuno assegnandogli "sempre" il nome "Copia_per_il_Gruppo.XLS"
2. il file vien salvato su un server in una cartella condivisa.
3. la macro di salvataggio salva solo i dati necessari alle attività del gruppo (fogli opportuni) con grafici e pivot se necessari.
Spero che il mio esempio possa esserti di aiuto
Private Sub Workbook_Open()
Avvia
End Sub
Option Explicit
Public DeltaT As Date, Risposta As String
Sub Avvia()
DeltaT = "00:00:10" ' <<---- Modifica questo valore in base al tempo che vuoi intercorra tra i vari salvataggi
Application.OnTime Now + TimeValue(DeltaT), "Salva_File"
End Sub
Sub Salva_File()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
On Error GoTo Errore
Kill "D:\Temp\File_Condivisi\Copia_per_il_Gruppo.xls"
Sheets("Foglio2").Copy
' ----->> Adatta, nell'istruzione seguente, il nome del "Percorso"
ActiveWorkbook.SaveAs Filename:= _
"D:\Temp\File_Condivisi\Copia_per_il_Gruppo.xls", FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWindow.Close
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "'Effettuato Salvataggio Automatico' del file. " & vbCrLf & vbCrLf & "Tempo trascorso dall'ultimo salvataggio: " & DeltaT ' <<----- Se vuoi, questo messaggio, può essere tolto
GoTo Continua
Errore:
Risposta = MsgBox("Attenzione: Salvataggio NON effettuato !!!" & vbCrLf & vbCrLf & "Chiudere il file: " & vbCrLf & _
"Copia_per_il_Gruppo.xls", vbCritical)
Continua:
Avvia
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Termina = "SI"
DeltaT = "00:00:00"
End Sub
Private Sub Workbook_Open()
DeltaT = "00:00:10" ' <<---- Modifica questo valore in base al tempo che vuoi intercorra tra i vari salvataggi
Avvia
End Sub
Option Explicit
Public DeltaT As Date, Risposta As String, Termina As String, Percorso As String, Nome_file As String
Sub Avvia()
If Termina = "SI" Then
Exit Sub
End If
Application.OnTime Now + TimeValue(DeltaT), "Salva_File"
End Sub
Sub Salva_File()
Application.ScreenUpdating = False
Application.DisplayAlerts = False
' Sheets("Foglio2").Copy ' <<------ Copia un solo Foglio
Sheets(Array("Foglio2", "Foglio3")).Copy ' <<------ Copia più di un Foglio
On Error GoTo Errore
Percorso = "D:\Temp\File_Condivisi\" ' <<-------- Modifica in base al tuo percorso
Nome_file = "Copia_per_il_Gruppo.xls" ' <<------ Assegna il nome che ti necessita
ActiveWorkbook.SaveAs Filename:=Percorso & Nome_file, FileFormat:= _
xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False _
, CreateBackup:=False
ActiveWindow.Close
Application.ScreenUpdating = True
Application.DisplayAlerts = True
MsgBox "Effettuato Salvataggio Automatico di una copia del file sul quale si sta operando " & vbCrLf & vbCrLf & "Tempo trascorso dall'ultimo salvataggio: " & DeltaT
GoTo Continua
Errore:
ActiveWindow.Close
Risposta = MsgBox("Attenzione: Salvataggio NON effettuato !!!" & vbCrLf & vbCrLf & vbCrLf & "Probabili cause:" & vbCrLf & "Percorso errato" & vbCrLf & _
"oppure" & vbCrLf & "il file: '" & Nome_file & "' è aperto", vbCritical)
Continua:
Avvia
End Sub
Torna a Applicazioni Office Windows
Inserire dati filtrati da 2 file ad un terzo file Autore: Ricky0185 |
Forum: Applicazioni Office Windows Risposte: 14 |
Inserire add.in nella barra di avvio veloce in excel 2003 Autore: Ricky0185 |
Forum: Applicazioni Office Windows Risposte: 4 |
Excel: problema con date se devo unirle a testi Autore: valle1975 |
Forum: Applicazioni Office Windows Risposte: 5 |
Visitano il forum: Nessuno e 7 ospiti