811 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo Alle,

Hoffe dass es euch allen gut geht. Ich habe heute auf einem kleinen Streifzug durchs Internet herausgefunden dass es eine Möglichkeit gibt mit der Formel:

=WENN(ZUFALLSZAHL()<0,33;ABRUNDEN(ZUFALLSZAHL()*10;0); ZEICHEN(RUNDEN(ZUFALLSZAHL()*26+(ZUFALLSZAHL()>0,66)*32+64,5;0)))

zufällige Zahlen oder Ziffern zu generieren. Leider gibt mir excell immer eine Fehlermeldung wenn ich es damit versuche und ich nbin noch nicht dahintergekommen was denn genau das Problem ist. Am liebsten würde ich mit dem Namen "pw" erreichen dass wenn ich in einer beliebigen zelle pw als Formel eingebe, also "=pw" immer eine Ziffer ein Buchstabe oder ein Sonderzeichen einfügt.

Also in excel 2016 möchte ich in einem dokument in eine Zeile nur =pw&pw&pw eingeben können für ein 3 stelliges passwort aus verschiedenen Zufallszeichen und buchstaben.

ist dies möglich? wie muss ich vorgehen?

Danke für eure Hilfe.

Torty

6 Antworten

0 Punkte
Beantwortet von
Hallo, Zufallspasswörter generieren lassen « auch eine Möglichkeit, sogar von hier.

Gruß
0 Punkte
Beantwortet von
Die Ausgabe noch
h]r<]1
;XT;>`
WAFyXm
VEvxHv
C:sZx1
7vys<V
2|HS_[
e2d9qP
[=4mLS
oder sollte es anders sein?
0 Punkte
Beantwortet von
Hallo,

das kannst du so machen, wie du dir das vorstellst. Definiere dazu im Namensmanager den Namen pw und gib im Feld "bezieht sich auf" die folgende Formel ein:

=ZEICHEN(ABRUNDEN(ZUFALLSZAHL()*94;0)+33)

Dann kannst du wie gewünscht =pw&pw&pw usw. verwenden.

Mit der Formel deckst du allerdings nur die Sonderzeichen ab, welche du auch auf amerikanischen Tastaturen findest. Wenn du nicht auch lokale Sonderzeichen wie ä, ö, ü, ß, & usw. einschließen, oder bestimmte Zeichen ausschließen willst, empfiehlt sich eine Benutzerformel über VBA. Gib dazu in einem Standardmodul (Menü Einfügen -> Modul) den folgenden Code ein.

für die Auswahl aus bestimmten Zeichen:
Function Passwort(anz As Long)

Dim valide As Boolean

Randomize Timer
Liste = Array("!", "[#]", "[$-~]", "&", "ä", "Ä", "ö", "Ö", "ü", "Ü", "ß", "&", "€")

For i = 1 To anz
Do
zchn = Chr(Int(Rnd * 255))
For l = 0 To UBound(Liste)
If zchn Like Liste(l) Then valide = True
Next l
Loop Until valide
valide = False
Passwort = Passwort & zchn
Next i

End Function
um ein Zeichen auszuschließen stelle ein Ausrufezeichen davor, setze das Ganze in eckige Klammern und füge das der Liste hinzu. "[!A]" schließt z.B. den Großbuchstaben A aus der Liste möglicher Zeichen aus. nähere infos gibt's hier.

Für ein siebenstelliges Passwort gibst du dann nur noch die Formel =Passwort(7) ein.

Aber ob du dir das kryptische Chaos merken kannst ist fraglich. Einfacher ist es sich einen Spruch auszudenken. Sowas wie: "meine Mutter ist die Beste der Welt" und davon nur die Anfangsbuchstaben zu verwenden. Ggf. ergänzt mit einer Zahl und ein bis drei Sonderzeichen an beliebiger Stelle. Wenn dann Zahl, Zeichen und Position von diesen regelmäßig wechseln ist der Spruch relativ sicher.

PS: Exakt dieses Passwort wir von mir natürlich nirgends verwendet sondern dient nur als Beispiel.

Gruß Mr. K.
0 Punkte
Beantwortet von
Mist zu spät :-)
0 Punkte
Beantwortet von
Der allte Thread in Antwort 1 schließt mit einer Frage ab. Daher vielleicht noch zur Erklärung, wie das Ganze funktioniert:

Zufallszahl (oder in VBA die Funktion Rnd) generiert eine Dezimalzahl zwischen 0 und 1. durch Multiplikation mit einer beliebigen Zahl deckt sie somit einen Dezimalrange zwischen 0 und dieser Zahl ab, erreicht sie selbst jedoch nie. Durch die Funktion Abrunden(x,0) bzw. in VBA die Funktion Int wird das Ganze ganzstellig und. Um bei gleicher Anzahl möglicher Zufallszahlen den Zahlenbereich nach hinten zu verschieben wird am Ende noch die untere Zahl addiert. Durch die Umwandlung mit Zeichen bzw. CHR. erhält man dann das der Zahl zugeordnete Zeichen aus der Ascii-Tabelle.

Für die 10 Zahlen zwischen 1 und 10 lautet die Formel z.B.

=ABRUNDEN(ZUFALLSZAHL()*10;0)+1
bzw. unter VBA: Int(rnd * 10) + 1

für 11 bis 20 =ABRUNDEN(ZUFALLSZAHL()*10;0)+11 usw.

Bla bla Schwafel... Wahrscheinlich interessiert das eh' niemanden. Aber falls doch, ist der Leser damit wieder ein bisschen schlauer. $:-)
0 Punkte
Beantwortet von
Hallo Alle,

Genial, Perfekt Super... Spitze! :-) Vielen Dank für die schnelle Hilfe hat mir sehr geholfen und nun kann ich das machen was ich wollte.

Sorry dass ich den "alten" Thread nicht gefunden habe... irgendwie wollte die Suchfunktion gestern nicht...

Danke auch für die Hintergrundinfo nun kann ich mir die Funktionsweise sogar noch vrstellen und wenn ich etwas ähnliches einmal brauchen würde weiss ich nun... sofern ich mich dann noch daran erinnern kann... wie ich vorgehen muss.

Ich danke euch allen für die Hilfe!

Torty
...