-
AutoreArticoli
-
Ciao a tutti.
nel workbook allegato nel foglio "accessi" viene inseritochi apre il workbook
data di apertura
accesso/chiusura.La parola "chiususa" si inserisce anche se nell'avviso vuoi salvare clicco no.
E' possibile aggiungere se il file viene modificato si inserisca la parola "chiususa con modifica"Grazie
Allegati:
You must be logged in to view attached files.E' possibile aggiungere se il file viene modificato
In base a cosa si stabilisce se il file viene modificato?
Se modificato qualsiasi cosa
Prova a sostituire la routine dell'evento Workbook_BeforeClose con questa:
Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim sAzione As String 'ACCESSI 'Call UpdateInfoSheet(sAction:="FINE SESSIONE") If Me.Saved Then sAzione = "CHIUSURA" Else sAzione = "CHIUSURA CON MODIFICA" UpdateInfoSheet sAzione End SubGrazie scossa, è quasi esatto
apro non faccio modifiche > nessun avviso = CHIUSURA
apro faccio modifiche > avviso vuoi salvare > SI = CHIUSURA CON MODIFICA
apro faccio modifiche > avviso vuoi salvare > NO = CHIUSURA CON MODIFICA
qui deve risultare = CHIUSURA
qui deve risultare = CHIUSURA
Scusa, ma se tu nella sub UpdateInfoSheet hai l'istruzione ThisWorkbook.Save il file viene salvato (con le relative modifiche) anche se hai risposto No all'avviso vuoi salvare, quindi il file è salvato con le modifiche apportate.
Probabilmente c'è qualcosa da cambiare
Faccio delle modifiche nel foglio
clicco > chiudi
compare " CHIUSURA CON MODIFICA "
nell'avviso "salvare modifiche" clicco SI va bene " CHIUSURA CON MODIFICA "
nell'avviso "salvare modifiche" clicco NO non va bene " CHIUSURA CON MODIFICA "
Probabilmente c'è qualcosa da cambiare
Forse non mi sono spiegato bene: l'avviso "salvare modifiche?" quando chiudi il file si presenta solo se sono state apportate modifiche al file e, indipendentemente dalla scelta fatta quando rispondi all'avviso (che sia Sì o che sia No), il tuo codice le modifiche le salva comunque; quindi o rivedi la logica di registrazioni degli accessi o accetti la dicitura "Chiusura con modifica".
Infatti c'è qualcosa da cambiare nel mio codice, che non riesco a fare
Non vedo niente
Non vedo niente
In effetti l'ho eliminato perche salva sempre anche se non salvi
ma in realtà anche il tuo dopo la modifica salva anche se non salvi
Allegati:
You must be logged in to view attached files.Adesso sembra funzionare vedi tu
se sceglia salva ; salva
se scegli non salvare; non salva
Allegati:
You must be logged in to view attached files.Se però si esegue una qualsiasi modifica, al momento della chiusura si sceglie ANNULLA...viene comunque registrata la chiusura pur rimanendo sul Foglio ACCESSI. In teoria credo che dovrebbe annullare la registrazione.
Se clicco annulla si registra CHIUSURA CON SALVATAGGIO per ogni volta che clicco annulla.
Un'altra cosa se durante le modifiche clicco nel pulsante salva e poi chiudo il file risulta CHIUSURA
Se clicco annulla si registra CHIUSURA CON SALVATAGGIO per ogni volta che clicco annulla.
Un'altra cosa se durante le modifiche clicco nel pulsante salva e poi chiudo il file risulta CHIUSURA
Si però il file viene sempre comunque salvato , se ho capito devi solo cambiare CHIUSURA CON SALVATAGGIO oppure CHIUSURA
m'ha ho parecchi dubbi
Se non fai nessuna modifica ti mette CHIUSURA , se modifichi ti apre la finestra Salva - Non salvare - annulla
Se non salvi non ti può mettere CHIUSURA e salvarlo , devi sempre salvarlo
Non può funzionare , se tu fai CHIUSURA CON SALVATAGGIO e salvi va tutto bene
Se fai una modifica e fai annula , ti mette CHIUSURA , ma se non salvi al prossimo riavvio CHIUSURA non c'è più perchè non hai salvato
Quindi per fare CHIUSURA CON SALVATAGGIO o CHIUSURA (devi sempre salvare tutto)
A meno chè tu non riesca a salvare il contenuto di un solo Foglio (che sappia io non è possibile)
Infatti c'è qualcosa da cambiare nel mio codice, che non riesco a fare
Edit
Ciao Scossa
Io propongo questa alternativa , poi vedrà lui cosa fare
Allegati:
You must be logged in to view attached files.Buongiorno Oscar,
anche io ieri pensavo a una cosa simile. La tua soluzione non è male ma se ho capito bene le esigenze dell'utente forse sarebbe meglio gestire in modo diverso l'opzione ANNULLA. Io pensavo a una cosa del genere...prendendo spunto dal tuo codice:
Private Sub Workbook_BeforeClose(Cancel As Boolean) Dim intRisposta As Integer intRisposta = MsgBox("Salvare le modifiche : " & ThisWorkbook.Name, vbYesNoCancel + vbQuestion, "Conferma salvataggio") Select Case intRisposta Case 6 Foglio1.Cells.Copy Sheets("Foglio5").Range("A1") Foglio2.Cells.Copy Sheets("Foglio6").Range("A1") Foglio3.Cells.Copy Sheets("Foglio7").Range("A1") Foglio4.Cells.Copy Sheets("Foglio8").Range("A1") Call UpdateInfoSheet(sAction:="CHIUSURA CON SALVATAGGIO"): ThisWorkbook.Save Case 7 Call UpdateInfoSheet(sAction:="CHIUSURA"): ThisWorkbook.Save Case 2 Cancel = True End Select End SubIn questo modo scegliendo ANNULLA si comporta proprio come dovrebbe essere....e cioè non fare nulla: né chiudere l'applicativo, né salvare, né registrare la CHIUSURA.
Anche perché utilizzare Application.Quit è sempre un rischio...se si hanno altri file excel aperti si rischia di chiuderli e perdere il lavoro. Io in quei casi preferisco sempre contare quanti Workbooks sono aperti e se sono più di uno allora chiudo solo ThisWorkbook altrimenti procedo con Application.Quit
Ciao Alexps81
Si certo adesso il mio era solo uno spunto per capire cosa voleva di preciso , poi si definiva dopo
Ecco il consiglio di Alexps81 di non chiudere con annulla
Allegati:
You must be logged in to view attached files.Ciao,
il punto che non mi è chiaro (e chiedo a frank_ciccio) è come va considerato la "CHIUSURA CON MODIFICA".
Mi spiego:
se apro il foglio e lo chiudo senza apportare nessuna modifica -> "CHIUSURA";
se apro il foglio, apporto una qualsiasi modifica e lo chiudo (e all'avviso rispondo Sì) -> "CHIUSURA CON MODIFICA";
ma se apro il foglio, apporto una qualsiasi modifica, lo SALVO (da menu/icona) e poi lo chiudo (quindi nessun avviso) come va considerato?
Questo è un chiarimento fondamentale per stabilire come muoversi.
Ciao Scossa
se lo salvi dal menu a tendina non succede niente , perchè non crea la coppia dei fogli quindi al riavvio è come prima
quando fai salva con modifica crea una coppia del fogli e salva , al riavvio carica i fogli salvati
Grazie a tutti, per le soluzioni varie.
Ma non puoi rispondere alla domanda che ti ho fatto al post #46055
ma se apro il foglio, apporto una qualsiasi modifica, lo SALVO (da menu/icona) e poi lo chiudo (quindi nessun avviso) come va considerato?
-
AutoreArticoli
