Condividi tramite

Excel 2007: è possibile creare una maschera di accesso al file ove inserire le credenziali (username e password)?

Anonimo
2011-07-15T10:10:22+00:00

Una volta effettuato l'accesso al file di riferimento è presente una maschera di inserimento dei dati.

Automaticamente i dati inseriti in questa maschera popolano un foglio di lavoro denominato DB.

L'obiettivo ora è fare in modo che all'interno del DB ci sia una colonna in cui andrà a comparire il nome della persona che ha effettuato l'accesso con le credenziali sopra citate. Bisogna scongiurare la possibilità che l'Utente possa inserire un nome diverso dal suo. In questo modo avendo effettuato l'accesso con le credenziali non può modificare i dati, o comunque è tracciato che è stato lui.

Grazie per la disponibilità anticipatamente

Microsoft 365 e Office | Excel | Per la casa | Windows

Domanda bloccata. Questa domanda è stata eseguita dalla community del supporto tecnico Microsoft. È possibile votare se è utile, ma non è possibile aggiungere commenti o risposte o seguire la domanda.

0 commenti Nessun commento

Risposta accettata dall'autore della domanda

Anonimo
2011-07-15T11:46:10+00:00

 Una volta effettuato l'accesso al file di riferimento è presente una maschera di inserimento dei dati.

Automaticamente i dati inseriti in questa maschera popolano un foglio di lavoro denominato DB.

L'obiettivo ora è fare in modo che all'interno del DB ci sia una colonna in cui andrà a comparire il nome della persona che ha effettuato l'accesso con le credenziali sopra citate. Bisogna scongiurare la possibilità che l'Utente possa inserire un nome diverso dal suo. In questo modo avendo effettuato l'accesso con le credenziali non può modificare i dati, o comunque è tracciato che è stato lui.

Grazie per la disponibilità anticipatamente

La strada più semplice se hai già la maschera di inserimento dati.

Aggiungi due TextBox e un CommandButton in alto nella UserForm e metti nell'evento Initialize della UserForm la proprietà Hight settata con un valore che visualizzi solo quella parte di UserForm, ad esempio:

Private Sub UserForm_Initialize()

    Me.Height = 127.5

End Sub

Intercetti quando l'utente preme il CommandButton per il log, dopo aver inserito Nome utente e password mostrando, se sono corrette, il resto della UserForm:

Private Sub CommandButton1_Click()

    Dim bln As Boolean

    Dim lRiga As Long

    Dim sh As Worksheet

    Set sh = ThisWorkbook.Worksheets("DataBase")

    Select Case Me.TextBox1.Text

        Case Is = "Pippo"

            If Me.TextBox2.Text = "abc" Then

                bln = True

            End If

        Case Is = "Pluto"

            If Me.TextBox2.Text = "def" Then

                bln = True

            End If

        Case Is = "Paperino"

            If Me.TextBox2.Text = "ghi" Then

                bln = True

            End If

        Case Else

            bln = False

    End Select

    If bln = True Then

        With sh

            Me.Height = 600

        End With

    End If

End Sub

A questo punto, quando l'utente confermerà(immagino ci sia un altro pulsante sulla UserForm) l'immissione dei dati nella tabella, copierai il nome della TextBox che contiene il Nome utente nell'apposito campo e, volendo fare le cose per benino, data e ora immissione in altre due colonne. Qui trovi il file che ho utilizzato per l'esempio:http://www.maurogsc.eu/esempiforum11/userformconlog.zip .

Per la *non modificabilità dei dati nella tabella* è sufficiente che tu protegga il foglio e poi che tolga la proteziione da codice prima di inserire i dati e la rimetta una volta inseriti.

Ricorda poi di metere in sicurezza, per quanto possibile, il codice, mettendo una password di protezione.

NOTA.

Ti ricordo che la sicurezza ed Excel sono due cose molto lontane fra loro. C'è sempre modo di riuscire ad eludere la sicurezza di Excel e del suo vb.

La risposta è stata utile?

0 commenti Nessun commento

0 risposte aggiuntive

Ordina per: Più utili