Condividi:        

Excel - Inserire Password per vedere dati

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

Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 13/05/12 11:25

Salve gente,
sarebbe possibile inserire in un foglio excel una password grazie alla quale puoi vedere dei dati?
Cioè puoi aprire normalmente il file, vedi il foglio che ha tutte le celle bloccate tranne una cella sbloccata nella quale inserisci la password.
Se la password è corretta hai la possibilità di visualizzare tutti i dati presenti nel foglio altriemnti resta tutto invariato.

Attualmente risolvo questo problema con le funzioni se, però quando scrivi la password comunque si vede nella barra di visualizzazione che non voglio nascondere.

Attualemnte faccio cosi:
Imposto tutte le celle che contengono dati con la funzione se in cui se la cella in cui scrivo la password A1 è uguale alla cella A1 del foglio Alfa allora escono i dati altrimenti resta invariato.
Chiaramente nascondo foglio Alfa e blocco la possibilità di scoprire il foglio.

Se non c'è altra soluzione alla mia (Cioè quella di inserire tante funzioni se) è possibile fare in modo tale che quando scrivo la password piuttosto che le lettere escono i pallini?!

Non va bene la soluzione di mettere una password per aprire il foglio.
Grazie!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Sponsor
 

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 13/05/12 13:56

Puoi usare questo codice da inseriree nel modulo
Codice: Seleziona tutto
Public Pw As String
Sub Sproteggi()
If Pw = "Pippo" Then
 ActiveSheet.Unprotect "Pippo"
 Else
 ActiveSheet.Protect "Pippo", DrawingObjects:=True, Contents:=True, Scenarios:=True
 End If
End Sub

e questo nel foglio
Codice: Seleziona tutto
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address <> "$A$1" Then Exit Sub
Pw = Target
If Pw <> "" Then Sproteggi
End Sub

La cella con Password in questo caso è la "A1" da adattare alla tua situazione
Chiaramente devi proteggere anche il Vba

Per avere i caratteri (pallini o asterischi) devi usare una userform con casella testo (textbox) con opzione protezione
(PasswordChar) e, chiaramente va modificata la macro

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: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 13/05/12 21:27

@Flash

Per avere i caratteri (pallini o asterischi) devi usare una userform con casella testo (textbox) con opzione protezione
(PasswordChar) e, chiaramente va modificata la macro


Come si fa?
Grazie!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 14/05/12 00:44

Ti sembra semplice?
se si, prova ad usare questo file
Clicca su A1 e nel box della password inserisci "Pippo" (rispettando le maiuscole)
Puoi non digitare nulla o altro avrai la possibilità di annullare dopo 3 tentativi altrimenti sei costretto a digitare la password corretta.
E, se ti piace, studia il codice

ciao

P.s. Hai solo due celle nelle quali cliccare A1 e B1 (B1 è nulla)
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: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 14/05/12 10:04

Ciao Flash.

Non è proprio quello che cercavo!
Se la password è corretta si sbloccano tutte le celle. Io non voglio che questo succede! io vorrei che se la password è corretta si visualizzano dei dati, mentre se è sbagliata la password la pagine resta uguale.

Mi basta anche che mi spieghi solo come si fa a fare uscire i pallini al posto delle lettere, al resto provo a fare io delle modifiche al modulo da te proposto!

Grazie!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 14/05/12 10:35

Flash nel tuo modulo non riesco a capire dove specifichi la cella A1;
Inoltre ogni qual volta vado sulla cella A1 mi chiede la password. Io vorrei che una volta inserita, essendo la pwd corretta non vorrei che me la richiede ogni qual volta ci clicco su A1.

Cortesemnte puoi fare un modulo che chiede la password quando clicco su C5 e se la pwd è corretta inserisci in cella C5 "ok", altrimenti se la pwd è sbagliata continua a chiedermi la pwd all'infinito!
Tutto questo senza sbloccare le celle del foglio!
Poi io farò delle formule se nelle quali stabilisco che se in cella C5 vi è "ok" escono i dati altrimenti resta tutto invariato!
Quindi se la pwd è corretta ed in C5 vi è "ok" escono i dati!
Come la vedi come soluzione?

Grazie!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 14/05/12 18:53

Io ti ho dato solo uno spunto
nel vba del foglio hai la macro che in caso di selezione della cella A1 appare sempre l'UserForm
ma puoi inserire una condizione esempio:
variabile Passo = 0
se la password dell'userform è corretta Passo prende valore 1
quindi nel selection_change aggiungi che se passo è uguale a zero fa quello che faceva prima altrimenti nulla

senza dover scrivere nulla nelle celle

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: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 14/05/12 22:07

Come faccio a cambiare la cella A1 in C5? Grazie
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 15/05/12 05:45

Devi andare nel Vba del foglio1 e cambiare l'indirizzo "$A$1" un "$C$1" così
Codice: Seleziona tutto
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
If Target.Address <> "$C$5" Then Exit Sub  '<<<<< qui
If Passo = 0 Then Controllo_Accesso  '<<<< qui ho aggiunto la variabile "Passo" che spiegavo nel post precedente
End Sub

Nel Vba devi aggiungere Passo sia in Public (integer)
Codice: Seleziona tutto
Option Explicit
Public CPw As Long, Ann, Passo As Integer  '<<<<< qui
Public Psw_Amm, PSW As String
Public Ws1 As Worksheet


e aggiungere Passo = 1nella variabile Sproteggi
Codice: Seleziona tutto
Sub Sproteggi()
Set Ws1 = Worksheets("Foglio1")
Passo = 1
Ws1.Unprotect Password:=Psw_Amm
End Sub


Però dovresti aggiungere in Thisworkbook_Open la protezione del foglio richiamando la macro "Proteggi" in questa maniera
Private Sub Workbook_Open()
proteggi
End Sub

All'apertura del file il foglio sarà protetto

Avendo corretto un bug nella macro ti posto l'intero codice del modulo quindi è consigliabile che copi tutto il codice in questo box e lo sostituisci al precedente.
Codice: Seleziona tutto
Option Explicit
Public CPw As Long, Ann, Passo As Integer
Public Psw_Amm, PSW As String
Public Ws1 As Worksheet
Sub Controllo_Accesso()
Set Ws1 = Worksheets("Foglio1")
Ws1.Select
Inizio:
Ann = 0
CPw = 0
UserForm1.TextBox1.Value = ""
Psw_Amm = "Pippo"
proteggi
    ActiveSheet.EnableSelection = xlUnlockedCells
    UserForm1.CommandButton3.Visible = True
    UserForm1.TextBox1.Visible = True
    UserForm1.Label1.Visible = True
    UserForm1.CommandButton1.Visible = True
    UserForm1.Show
InizioP:
If Ann = 0 Then
    If PSW <> Psw_Amm Then
        UserForm1.TextBox1.Value = ""
        UserForm1.TextBox1.Visible = True
        UserForm1.Label1.Visible = True
        UserForm1.CommandButton1.Visible = True
        UserForm1.CommandButton3.Visible = False
        UserForm1.Show
            CPw = CPw + 1
            If CPw < 3 Then
                MsgBox "Password Errata... Riprova (Controlla maiuscole/minuscole)"
                GoTo InizioP
            Else
                MsgBox "Password Errata per 3 volte - Dgita Utente o annulla"
                GoTo Inizio
            End If
        Else
            Sproteggi
        End If
    End If
End Sub

Sub proteggi()
Set Ws1 = Worksheets("Foglio1")
Ws1.Protect Password:=Psw_Amm, DrawingObjects:=True, Contents:=True, Scenarios:=True, AllowFormattingCells:=True
End Sub

Sub Sproteggi()
Set Ws1 = Worksheets("Foglio1")
Passo = 1
Ws1.Unprotect Password:=Psw_Amm
End Sub


Per sicurezza Allego il file modificato

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: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 20/05/12 00:43

Ciao ragazzi riprendo l'argomento!
Il problema non lo ho risolto!
Ho bisogno della userform, quindi utilizzare macro però non mi serve robba del tipo proteggi/sproteggi come mi era stato proposto.

Vorrei semplicemnte che quando clicco in C5 compare la userform e quindi quando scrivo la password quello che scrivo nn si vede; Dopodiche se la pwd è corretta, in cella C5, o anche un'altra cella, esce scritto ok, altrimenti se la pwd non è corretta continua a chiedermelo all'infinito!

Mi aiutate?
Grazie!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 20/05/12 05:39

Non so come uscirà un utenete, da quella situazione se erroneamente clicca su C5 senza avere la password, comunque...
Prova Questo File

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: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 20/05/12 10:33

Flash hai ragione a questo non ci ho pensato!

Non si può predisporre tipo il tasto annulla che se non la sai hai la possbilita comunque di uscire!
Ti ringrazio!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Sasyjoe » 20/05/12 10:50

Inoltre flash se la pwd è corretta vorrei che non me la chiedesse più!
Invece se digito la pwd corretta e rivado su c5 continua a richiedermela!
Grazie per la disponibilità e la pazienza!
Saluti, Salvatore!
Sasyjoe
Utente Senior
 
Post: 404
Iscritto il: 04/05/12 13:27

Re: Excel - Inserire Password per vedere dati

Postdi Flash30005 » 20/05/12 17:10

Sasyjoe ha scritto:Flash hai ragione a questo non ci ho pensato!...

Io si ! :D
Ma a questo punto utilizza il file precedente
dove Annulla appare dopo tre tentativi
e dopo aver digitato la pw corretta non hai ulteriori richieste.
Perché nell'ultimo file ho fatto ciò che mi chiedevi, rendendo la macro minima ed essenziale, ma...

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-


Torna a Applicazioni Office Windows


Topic correlati a "Excel - Inserire Password per vedere dati":

Password Imap (email)
Autore: lukarello7
Forum: Discussioni
Risposte: 8

Chi c’è in linea

Visitano il forum: raimea e 43 ospiti