| Precedente :: Successivo |
| Autore |
Messaggio |
apoben64 Moderatore


Registrato: 09/09/06 12:27 Messaggi: 232
|
Inviato: Mer Ott 18, 2006 10:22 am Oggetto: Protezione: Nascondere la barra dei comandi di excel |
|
|
Vi propongo questa soluzione per poter , diciamo in teoria, proteggere in qualche modo i nostri lavori o renderli più professionali.
Questo semplice codice inibisce la visualizzazione della barre dei comandi di excel .
| Codice: |
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call sparCommandBar(True)
End Sub
Private Sub Workbook_Open()
Call sparCommandBar(False)
End Sub
'*********************in un modulo :
Option Explicit
Sub sparCommandBar(ByVal bolSp As Boolean)
Dim cmbBar As CommandBars
Dim I As Integer
Set cmbBar = Application.CommandBars
For I = 1 To Application.CommandBars.Count
cmbBar(I).Enabled = bolSp
Next I
End Sub
|
Un esempio pratico lo trovate a questo link:
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
Un saluto Luca |
|
| Top |
|
 |
bobbo Novizio

Registrato: 02/03/08 10:40 Messaggi: 4
|
Inviato: Gio Mar 06, 2008 4:08 pm Oggetto: |
|
|
Scusate la mia ignoranza ma la vostra soluzione mi ha messo in crisi....
funziona perfettamente ma ora SENZA VISUALIZZARE I COMANDI non riesco più a lavorare sul file che, molto intelligentemente, non ho salvato prima di inserire le vostre istruzioni. E ora??!! Aiuto |
|
| Top |
|
 |
apoben64 Moderatore


Registrato: 09/09/06 12:27 Messaggi: 232
|
Inviato: Gio Mar 06, 2008 5:34 pm Oggetto: |
|
|
Ciao,
ovviamente tutti i tentavi di proteggere il foglio possono poi causare problemi, sopratutto se chiudiamo NON correttamente excel, come suppongo nel tuo caso .
Ora riaprendo il file in cui hai inserito il codice sopra ,
prova ad andare nel VBA con ALT F11 prova a modificare questa istruzione
e mettere :
Private Sub Workbook_Open()
Call sparCommandBar(True)
End Sub
Salva e chiudi il file e riaprilo.
Se non bastasse , fai sapere
Luca _________________
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
|
|
| Top |
|
 |
bobbo Novizio

Registrato: 02/03/08 10:40 Messaggi: 4
|
Inviato: Gio Mar 06, 2008 6:28 pm Oggetto: Nascondi camandi |
|
|
Ciao Luca, grazie del prezioso aiuto AltF11 che non conoscevo.
Per quanto riguarda l'istruzione in oggetto non ho capito però come utilizzarla. A qualsiasi utente a cui passo l'applicazione praticamente si blocca Excel e per riattivarlo deve passare tramite ALTF11??
Grazie di nuovo e ciao
Marcello |
|
| Top |
|
 |
apoben64 Moderatore


Registrato: 09/09/06 12:27 Messaggi: 232
|
Inviato: Gio Mar 06, 2008 8:01 pm Oggetto: |
|
|
Ciao,
da quello che mi dici , vuol dire che il file è salvato con un codice incompleto e quindi passandolo ad altri , anche loro hanno lo stesso problema.
Quindi bisogna interagire nel codice del tuo file che ha creato il problema.
L'ALT F11 serve solo per inserire il codice e poi farlo eseguire .
Non puoi , togliendo dati sensibili, allungarmi questo file ?
Luca _________________
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
|
|
| Top |
|
 |
bobbo Novizio

Registrato: 02/03/08 10:40 Messaggi: 4
|
Inviato: Mer Mar 12, 2008 12:37 pm Oggetto: Nascondi barra comandi |
|
|
Scusa ma non ho ancora risolto in maniera soddisfacente il mio problema.
Come mi hai suggerito ho inserito le seguenti istruzioni nella cartella Thisworkbook
Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Call sparCommandBar(True)
End Sub
Private Sub Workbook_Open()
Call sparCommandBar(False)
End Sub
Private Sub Workbook_BeforeClose(Cancel As Boolean)
Application.DisplayAlerts = False
ActiveWorkbook.Save
Application.Quit
End Sub
ed in un modulo
Option Explicit
Sub sparCommandBar(ByVal bolSp As Boolean)
Dim cmbBar As CommandBars
Dim Z As Integer
Set cmbBar = Application.CommandBars
For Z = 1 To Application.CommandBars.Count
cmbBar(Z).Enabled = bolSp
Next Z
End Sub
Ho infine collegato un pulsante alla seguente macro per consentire all’utente di chiudere l’applicazione
Sub Esci()
Application.Quit
End Sub
Il tutto funziona PERFETTAMENTE ma non consente all’utente di uscire SENZA SALVARE (dopo aver inserito dati sbagliati o cancellato qualcosa per errore talvolta risulta pratico uscire senza salvare e poi ricominciare....)
Ho fatto qualche tentativo ma non sono riuscito.
Modificando l’istruzione
Application.DisplayAlerts = False
il problema sembra risolto ma si apre la possibilità che l’utente scelga ANNULLA nel qual caso la barra dei comandi resta VISIBILE.
Se riesci a darmi un suggerimento...
Ciao Marcello |
|
| Top |
|
 |
bobbo Novizio

Registrato: 02/03/08 10:40 Messaggi: 4
|
Inviato: Mer Mar 12, 2008 8:15 pm Oggetto: Nascondi barra |
|
|
Ci sono riuscito da solo.
E' una soluzione non troppo ortodossa ma funziona!
Ho creato un pulsante Esci associato alla Macro
Sub Esci()
MiaForm.Show
End Sub
Ho creato quindi una userform uguale a quella di uscita di Excel con i tre pulsanti classici "SI" "NO" "ANNULLA" ai quali ho associato questo codice
Private Sub CommandButton1_Click() ' pulsante Si per salvare
Application.DisplayAlerts = False
ActiveWorkbook.Save
Call sparCommandBar(True)
ThisWorkbook.Close
Application.DisplayAlerts = True
End Sub
Private Sub CommandButton2_Click() ' pulsante No per non salvare
Call sparCommandBar(True)
Application.DisplayAlerts = False
ThisWorkbook.Close
Application.DisplayAlerts = True
End Sub
Private Sub CommandButton3_Click() ' pulsante Annulla
Unload Me
End Sub
Ciao alla prossima |
|
| Top |
|
 |
apoben64 Moderatore


Registrato: 09/09/06 12:27 Messaggi: 232
|
Inviato: Mer Mar 12, 2008 8:30 pm Oggetto: |
|
|
Bravo !
Ciao
Luca _________________
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
|
|
| Top |
|
 |
Alexsandra Moderatrice


Registrato: 06/05/06 22:48 Messaggi: 78 Residenza: Verona
|
Inviato: Gio Mar 13, 2008 1:02 am Oggetto: |
|
|
Bravo  _________________
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
- Portale contro la pedofilia e le truffe informatiche |
|
| Top |
|
 |
unprincipiante Novizio

Registrato: 15/07/09 22:00 Messaggi: 10
|
Inviato: Mer Lug 15, 2009 10:06 pm Oggetto: |
|
|
Buonasera a tutti. Ho cercato di contattare via mail apogen64, perchè ho reperito in giro un suo foglio excel con la macro qui sopra postata, ma invano. Spero qualcuno mi possa aiutare.
Ho bisogno di far funzionare una macro come qui sopra, che mi nasconda la barra dei comandi. Così come fatto da bobbo, con la userform sarebbe l'ideale. Il problema è che non riesco a far funzionare il tutto su excel 2007. Inoltre non riesco a capire come nascondere le schede (O linguette).
Spero qualcuno mi possa aiutare.
Ciao
M. |
|
| Top |
|
 |
archi Site Admin


Registrato: 30/10/05 09:22 Messaggi: 1472
|
Inviato: Gio Lug 16, 2009 6:29 am Oggetto: sezione sbagliata |
|
|
Ciao unprincipiante hai sbagliato sezione, l'ho spostata qui
Solamente gli utenti registrati possono vedere link su questo forum! Registrati oppure Autenticati su questo forum. |
Ciao archi  _________________ Le domande che hanno una risposta non sono buttate al vento |
|
| Top |
|
 |
|