Condividi tramite

Macro creare password dinamica

Anonimo
2014-09-22T10:21:31+00:00

Ciao!

cercando su internet ho trovato una macro che crea una "password" (es "52UT7" ).

Il mio problema è che ad ogni avvio ottengo sempre la stessa serie di password  mentre vorrei, sempre se è possibile, ottenere sempre password diverse ogni volta mantenendo però il tempo di esecuzione insomma ad avvii distinti devo ottenere password distinte in un solo ciclo.

Si può fare?

Allego macro:

Sub CreatePWD()

    Dim PWD As String

    Dim i As Integer

    Dim F1 As Worksheet

    Set F1 = ThisWorkbook.Worksheets("Foglio1")

    For i = 1 To 5

        If Int((2 * Rnd) + 1) = 1 Then

            PWD = PWD & Chr(Int((90 - 65 + 1) * Rnd + 65))

        Else

            PWD = PWD & Int((9 - 0 + 1) * Rnd + 0)

        End If

    Next i

    F1.Range("K1").Value = PWD

    MsgBox (PWD)

End Sub

Grazie

A

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
2014-09-22T13:09:40+00:00

Il mio problema è che ad ogni avvio ottengo sempre la stessa serie di password  mentre vorrei, sempre se è possibile, ottenere sempre password diverse ogni volta mantenendo però il tempo di esecuzione insomma ad avvii distinti devo ottenere password distinte in un solo ciclo.

La funzione Random ti darà, prima o poi, lo stesso valore. Vedi:

http://it.wikipedia.org/wiki/Numeri_pseudo-casuali

Potresti, ad esempio, fare una cosa del genere: controllare di non averla già utilizzata creando una tabella di password già emesse.

Un esempio qui:

http://www.maurogsc.eu/esempiforum14/passwordrandom.zip

Il foglio con l'elenco delle password può essere nascosto:

NomeDelFoglio.Visible=xlSheetVeryHidden

La risposta è stata utile?

0 commenti Nessun commento

1 risposta aggiuntiva

Ordina per: Più utili
  1. Anonimo
    2014-09-22T10:54:11+00:00

    Ciao!

    cercando su internet ho trovato una macro che crea una "password" (es "52UT7" ).

    Il mio problema è che ad ogni avvio ottengo sempre la stessa serie di password  mentre vorrei, sempre se è possibile, ottenere sempre password diverse ogni volta mantenendo però il tempo di esecuzione insomma ad avvii distinti devo ottenere password distinte in un solo ciclo.

    Si può fare?

    ...

    Aggiungi la seguente riga prima del ciclo For/Next:

    Randomize Timer

    Se, invece, volessi proprio ripetere una specifica sequenza casuale, sempre prima del ciclo For/Next, richiama la funzione rnd con un argomento negativo.

    La risposta è stata utile?

    0 commenti Nessun commento