chiusura di files dallesterno
Hai un problema con Excel? 
di Grograman data: 02/01/2014 15:56:14
Non ho capito bene se è la soluzione che ti serve, ma forse ti basta aprire il codice disabilitando gli eventi, e poi riattivarli prima di uscire dalla routine che apre i vari file di cui parli.
Esempio blando non avendo visto il codice reale:
Option Explicit
Sub apriechiudi()
Application.EnableEvents = 0 'annulla effetti "workbook open" e simili
Dim wb As Workbook
Set wb = Application.Workbooks.Open("C:ProveContab.xlsm")
wb.Close vbNo
Set wb = Nothing
Application.EnableEvents = 1 'riabilita eventi
End Sub |
di passodellupo data: 03/01/2014 14:12:36
Grazie della risposta.
con il tuo aiuto sono riuscito.
di seguito il codice inserito nel primo file, quello principale...
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Dim risposta As Integer
Dim salva As Boolean
Dim b As String
Dim conferma As Integer
risposta = MsgBox("Salvo tutto e chiudo?", 3)
Select Case risposta
Case Is = 2 'risposta ANNULLA
Cancel = True
Exit Sub
Case Is = 6 'risposta salva tutto
salva = True ' imposta il salvataggio come si
GoTo chiudi
Case Is = 7
conferma = MsgBox("Chiudo senza salvare?", 4)
If conferma = 7 Then
Cancel = True 'conferma no
Exit Sub 'GoTo fine
Else
salva = False
End If
End Select
chiudi:
Application.EnableEvents = 0
DisplayAlerts = False
Workbooks("s90.xlsm").Close savechanges:=salva
For a = 12 To 1 Step -1
b = Format(a, "00")
Workbooks(b & ".xlsm").Close savechanges:=salva
Next a
If salva = True Then
Workbooks("00.xlsm").save
End If
DisplayAlerts = False
Cancel = False
DisplayAlerts = True
Application.EnableEvents = 1
End Sub |
di passodellupo data: 03/01/2014 14:33:48
Sicuramente, visto che sono assolutamente neofita per quanto riguarda VBA, il codice sarà pieno di errori, soluzioni non ortodosse e giri inutili. L'ultima volta che ho inserito del codice era sul Commodore 64 in BASIC.
Non mi dispiacerebbe un giudizio e eventuali consigli.
Grazie
Vuoi Approfondire?