Condividi:        

scopri foglio

Vuoi potenziare i tuoi documenti Word? Non sai come si fa una macro in Excel? Devi creare una presentazione in PowerPoint?
Oppure sei passato a OpenOffice e non sei sicuro di come lavorare al meglio?

Moderatori: Anthony47, Flash30005

scopri foglio

Postdi criscolo67 » 18/02/12 19:48

salve a tutti, ho cercato in giro nel forum ma nulla, ho un nuovo problema con il mio programmino, ho un foglio "dati" dove sono elencati i nominativi dei dipendenti affianco ad ogni nome mediante un tasto e collegata una macro che permette l'apertura del proprio foglio presenze che si apre solo dopo aver digitato una password (diversa per ogni dipendente) detto foglio si nasconde automaticamente dopo il salvataggio dei dati, rimanendo visibile il solo foglio dati. il problema nasce che se premo con il tasto destro sul foglio dati mi permette di scoprire tutti i fogli nascosti e quindi eludere le password, come posso ovviare a ciò ringrazio e spero di essere stato chiaro.
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Sponsor
 

Re: scopri foglio

Postdi ricky53 » 18/02/12 23:20

Ciao,
puoi inviare la macro e dirci che versione di excel utilizzi.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: scopri foglio

Postdi criscolo67 » 19/02/12 10:32

Utilizzo excell 2010, ti invio la macro che permette il collegamento , mediante un tasto, al foglio presenze personale (ISP) gli altri sono isp2/isp3/isp4 etc, (sono in tutto 60 fogli presenza)mediante l'inserimento di una password prestabilita, ora per tutti "prova". Ma se vado sulla linguetta del foglio dati e clicco sul tasto dx mi permette di scoprire tutti i fogli nascosti quindi addio privacy.
Codice: Seleziona tutto
Sub isp()
Dim pass, ipname As String
ipname = "prova"
pass = InputBox(prompt:="Inserisci password di accesso per Proseguire: ", _
Title:="Controllo accessi")
If ipname = pass Then
    Sheets("isp").Visible = True
    Sheets("isp").Select
     Else: MsgBox "Password errata : Accesso non consentito", vbInformation + vbYes, _
        "Verifica Password"
    Exit Sub
    End If
End Sub

vi chiedo anche se è possibile, nel caso in cui un dipendente voglia cambiare la propria password, come fare senza dover entrare ogni volta nella macro. Questo potrebbe anche accadere se il dipendente legato al foglio "ISP6" venga sostituito e mi chieda il new entry di cambiare la password di accesso con una a suo piacimento. grazie
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi criscolo67 » 19/02/12 17:45

Codice: Seleziona tutto
Sub StopControl()
Dim ctrl As CommandBarControl
For Each ctrl In Application.CommandBars("Cell").Controls
If ctrl.Caption = "&Copia" Then ctrl.Delete
Next
End Sub


ad esempio questa posso usarla per eliminare il comando copia dal menu contestuale della cella. ho provato ad usarla anche sui fogli mettendo al posto di "cell" la parola "sheet" e al posto di &copia ho messo sc&opri. ma nulla è cambiato...il copia sparisce e così qualunque altro comando, mentre se si tratta di foglio di lavoro non accade nulla. com'è possibile? grazie
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi ricky53 » 19/02/12 20:19

Ciao,
il codice per "nascondere" i fogli?

Probabilmente hai utilizzato
Codice: Seleziona tutto
    Sheets("Isp").Visible = xlHidden

prova con
Codice: Seleziona tutto
    Sheets("Isp").Visible = xlVeryHidden
in questo modo l'opzione "Scopri" del tasto destro non sarà attiva o lo sarà solo per quei fogli nascosti con "xlHidden"
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: scopri foglio

Postdi criscolo67 » 20/02/12 10:35

Grazieeee tutto ok, ora devo solo risolvere il problema del cambio password senza dover ogni volta entrare nella macro.
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi ricky53 » 20/02/12 12:20

Ciao,
bene per il primo passo.

Adesso:
puoi utilizzare una userform (chiamata da un pulsante cui tu assegnerai il nome "Cambia Password") nella quale fai fare la modifica della PSW chiedendo (con tre textbox)la vecchia e due volte la nuova (la seconda volta a conferma della prima impedendo il copia incolla se possibile) impstando la proprietà "PasswordChar" a "*" in tutte e tre le text box.

Prova e ... sono QUI
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: scopri foglio

Postdi criscolo67 » 20/02/12 19:52

ricky53 ha scritto:Ciao,
bene per il primo passo.

Adesso:
puoi utilizzare una userform (chiamata da un pulsante cui tu assegnerai il nome "Cambia Password") nella quale fai fare la modifica della PSW chiedendo (con tre textbox)la vecchia e due volte la nuova (la seconda volta a conferma della prima impedendo il copia incolla se possibile) impstando la proprietà "PasswordChar" a "*" in tutte e tre le text box.

Prova e ... sono QUI

grazie per l'aiuto, ma sinceramente non ho capito bene cosa dovrei fare...non ho mai usato ciò e non saprei neanche di cosa stai parlando...sono riuscito ad arrivare a inserisci userform...poi cosa dovrei fare? grazie
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi criscolo67 » 20/02/12 22:07

ho provato con la userform arrivando a questo punto:

tasto nella pagina principale che attiva questa macro

Codice: Seleziona tutto
Sub isp()
Dim pass, ipname As String
ipname = "prova"
UserForm1.Show
End Sub


mi apre la userform con la casella di testo dove inserire la password e 3 pulsanti: OK, ANNULLA, CAMBIA PASSWORD; impostati come segue
Codice: Seleziona tutto
Private Sub CommandButton1_Click() 'ok
UserForm1.Hide
If ipname = UserForm1.TextBox1.Value Then
    Sheets("isp").Visible = True
    Sheets("isp").Select
Else: MsgBox "Password errata : Accesso non consentito", vbInformation + vbYes, _
    "Verifica Password"
    Exit Sub
End If
End Sub

Private Sub CommandButton2_Click() 'annulla
UserForm1.Hide
End Sub

Private Sub CommandButton3_Click() 'cambia password
UserForm1.Hide
UserForm2.Show
End Sub


ora cambia password mi apre una seconda useerform con tre caselle di testoi, la prima che vuole la vecchia password, la seconda vuole la nuova e la terza la conferma della nuova...codice:
Codice: Seleziona tutto
Private Sub CommandButton1_Click() 'ok
If UserForm2.TextBox1 = ipname And UserForm2.TextBox3 = UserForm2.TextBox2 Then
ipname = UserForm2.TextBox2.Value
UserForm2.Hide
Else: MsgBox "Password errata. Riprova."
UserForm2.Hide
UserForm2.Show
End If
End Sub

Private Sub CommandButton2_Click() 'annulla
UserForm2.Hide
End Sub


questo è tutto...però non funziona, cioè come password non mi vede "prova", ma nulla, cioè se nn scrivo niente la accetta altrimenti è errata...dove sbaglio???
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi Anthony47 » 20/02/12 23:40

Prova a dichiarare Public la variabile ipname, scrivendo IN TESTA a un Modulo standard (es Modulo1)
Codice: Seleziona tutto
Public ipname As String

(ovviamente rimuoverai la [Dim] ipname As String in testa alla Sub isp)
In questo modo la ipname che usi nella macro di evento dei pulsanti sara' la stessa che inizializzi in Sub isp; nella situazione di adesso infatti si tratta di variabili diverse pur avendo lo stesso nome, perche' l' area di validita' e' limitata alla specifica macro.

Ciao
Avatar utente
Anthony47
Moderatore
 
Post: 19196
Iscritto il: 21/03/06 16:03
Località: Ivrea

Re: scopri foglio

Postdi criscolo67 » 21/02/12 09:44

Anthony47 ha scritto:Prova a dichiarare Public la variabile ipname, scrivendo IN TESTA a un Modulo standard (es Modulo1)
Codice: Seleziona tutto
Public ipname As String

(ovviamente rimuoverai la [Dim] ipname As String in testa alla Sub isp)
In questo modo la ipname che usi nella macro di evento dei pulsanti sara' la stessa che inizializzi in Sub isp; nella situazione di adesso infatti si tratta di variabili diverse pur avendo lo stesso nome, perche' l' area di validita' e' limitata alla specifica macro.

Ciao

ah ho capito, infatti ci avevo pensato, però il fatto è che la variabile ipname, ovvero la password, ce n'è una per ogni persona, cioè io ho 60 persone, ognuna con password diversa, facendo come dici tu poi non varrebbe per tutte le 60 persone la stessa identica password?
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi ricky53 » 21/02/12 10:08

Ciao,
No, la varibile viene impostata, dal tuo codice, quando occorre e vale per tutti gli utenti.

Qualche suggerimento:
è meglio creare una corrispondenza utente/sua psw (tabella che scriverei in un foglio nascosto) e poi con il codice e la userform consentire la modifca, ad ogni utente, della propria psw aggiornando questa tabella di corrispondenza.
Questa tabella verrà utilizzata anche in apertura del file per controllare l'accesso dell'utente ...

Sono IDEE su cui lavorare.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: scopri foglio

Postdi criscolo67 » 21/02/12 17:48

ricky53 ha scritto:Ciao,
No, la varibile viene impostata, dal tuo codice, quando occorre e vale per tutti gli utenti.

Qualche suggerimento:
è meglio creare una corrispondenza utente/sua psw (tabella che scriverei in un foglio nascosto) e poi con il codice e la userform consentire la modifca, ad ogni utente, della propria psw aggiornando questa tabella di corrispondenza.
Questa tabella verrà utilizzata anche in apertura del file per controllare l'accesso dell'utente ...

Sono IDEE su cui lavorare.

ci avevo pensato anche io a fare un altro foglio...ma ho paura che in qualche modo possa riuscire a leggerlo qualcuno che è abbastanza pratico di excel...però è un'idea...abbastanza buona...
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50

Re: scopri foglio

Postdi Flash30005 » 21/02/12 21:23

Mettere le password sullo stesso file di excel è una valida idea per gli "ottimisti"

Tempo fa ho risolto scrivendo in un file (anonimo e senza estensione) nei "meandri" della rete ;)

Ma anche io sono "ottimista" perché accedendo alla macro di excel si scopre il "trucchetto"

Ciao
Flash
Win10 + Office 2010 Ita
"Fotografica" al servizio dell'immagine
Avatar utente
Flash30005
Moderatore
 
Post: 8517
Iscritto il: 27/09/07 11:44
Località: Roma +o-

Re: scopri foglio

Postdi ricky53 » 22/02/12 00:31

Ciao,
Flash sono con te in pieno.

Premesso che le PSW nei file sono inutili perchè facilmente rimovibili senza fatica.
L'obiettivo, inserendo delle password, non deve essere quello di impedire l'accesso a dei dati ma quello di gestire gli accessi a diversi utenti, proponendo loro degli spazi personali ove lavorare ed impedire le cancellazioni accidentali.
Questi utenti non avranno lo scopo di sproteggere il tuo file ma quello di lavorarci sopra tutti insieme ognuno per le proprie competenze e necessità.
Dice il vecchio saggio provare e riprovare è l'unica strada per imparare

Più chiara è la vostra spiegazione
Più immediata sarà la nostra soluzione


. . . . . . . . . .
S.O. W10; Office 2003-10-13-16-19
Avatar utente
ricky53
Utente Senior
 
Post: 4565
Iscritto il: 11/04/09 19:29
Località: Italia

Re: scopri foglio

Postdi criscolo67 » 22/02/12 19:31

tutto ok, risolto tutto, ho fatto un elenco a parte che tiene memorizzate tutte le password dei relativi dipendenti, e se qualcuno sceglie di cambiare password mediante una userform chiede vecchia e due volte la nuova e la macro la andrà a sostiture nel predetto elenco. grazie a tutti, ora conosco una cosa nuova...la userform...davvero molto utile...
criscolo67
Utente Junior
 
Post: 96
Iscritto il: 13/05/11 13:50


Torna a Applicazioni Office Windows


Topic correlati a "scopri foglio":


Chi c’è in linea

Visitano il forum: Nessuno e 28 ospiti