Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Buchstaben Zufallsgenerator - VBA

Buchstaben Zufallsgenerator - VBA
dieter(drummer)
Excel/VBA SoLaLa
Hi VBA Profis,
suche ein spezielles Makro zur Erzeugung von Zufalls-Buchstaben, ähnlich der Zufallszahlen.
Makro soll folgendes erzeugen: In Exceltabelle, in den Zellen C4 bis V23, also 20 Zeichen in der Höhe
und in der Breite, sollen in JEDER ZELLE (400 Zellen) durch Zufallsgenerierung EIN Buchstabe
(können alles Kleinbuchtaben sein) stehen. Die Buchstaben sind ,a bis z (26) + ä, ö ü, also 29 Möglichkeiten.
Es muss nicht in jeder Zelle (20 x 20) ein anderer Buchstabe vorkommen. Es sollen aber auch nicht untereinander/nebeneinander oder diagonal alle Buchstben gleich sein.
Sinn der Sache ist: In dem "Kasten" 20 x 20 können sinnvolle Namen gelesen werden,
wenn welche da sind. Diese können waagerecht, senkrecht oder diagonal möglich sein.
Reines Gehirnjogging!
Sollte mir jemand helfen können, wäre das toll und Danke für's drum kümmern!
Gruß vom jetzt Rentner
dieter(drummer)
Anzeige

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
Buchstaben Zufallsgenerator - Formel
15.09.2009 12:27:39
Rudi
Hallo,
warum nicht einfach per Formel?
ohne Umlaute:
=ZEICHEN(ZUFALLSZAHL()*25+97)
Gruß
Rudi
AW: Danke Rudi! Einfach und TOLL. Funtz
15.09.2009 12:32:59
dieter(drummer)
Hi Rudi,
Danke für schnell und prima Hilfe. Funtz super.
Grüße und Dank.
Dieter(drummer)
Es muss *26 heißen. mwT
15.09.2009 12:44:53
Rudi
Hallo,
kleine Erweiterung:
in eine 20x20-Matrix (hier C2:V21): =GANZZAHL(ZUFALLSZAHL()*26+100)
für den Joggingbereich: =WENN(C2<123;ZEICHEN(C2);WAHL(C2-122;"ä";"ö";"ü"))
dann hast du auch die Umlaute.
Gruß
Rudi
Anzeige
AW: Dank an Rudi und Chris. Spitze!
15.09.2009 13:01:41
dieter(drummer)
Danke an Rudi und Chris.
Funktioniert prima! Rudi, die 25 statt 26 hatte ich schon bemerkt.
Gruss dieter(drummer)
AW: als Makro mit Umlauten
15.09.2009 12:50:53
Chris
Servus Dieter,
als Makro würd ich's so machen:
Sub tt()
Dim Obergrenze As Long, Untergrenze As Long, x As Long
Dim BuchstabenArray, Index
Dim Bereich As Range, zelle As Range
Set Bereich = Range("C4:V23")
BuchstabenArray = ("a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,ü,ä,ö")
Index = Split(BuchstabenArray, ",")
Obergrenze = 29
Untergrenze = 1
For Each zelle In Bereich
x = Int((Obergrenze - Untergrenze + 1) * Rnd + Untergrenze)
zelle.Value = Index(x - 1)
Next zelle
End Sub
Gruß
Chris
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Zufallsgenerator für Buchstaben in Excel


Schritt-für-Schritt-Anleitung

Um einen Zufallsgenerator für Buchstaben in Excel zu erstellen, kannst du entweder eine Formel oder ein VBA-Makro verwenden. Hier sind die Schritte für beide Methoden:

1. Mit einer Formel:

  • Öffne Excel und wähle die Zelle aus, in der du den zufälligen Buchstaben generieren möchtest.

  • Verwende folgende Formel ohne Umlaute:

    =ZEICHEN(ZUFALLSZAHL()*25+97)
  • Für Umlaute kannst du die erweiterte Formel verwenden:

    =WENN(GANZZAHL(ZUFALLSZAHL()*29+1)<27;ZEICHEN(GANZZAHL(ZUFALLSZAHL()*26+97));WAHL(GANZZAHL(ZUFALLSZAHL()*3+1);"ä";"ö";"ü"))
  • Ziehe die Formel über die gewünschten Zellen (z. B. C4:V23), um zufällige Buchstaben zu generieren.

2. Mit einem VBA-Makro:

  • Drücke ALT + F11, um den VBA-Editor zu öffnen.

  • Füge ein neues Modul hinzu und kopiere den folgenden Code hinein:

    Sub tt()
      Dim Obergrenze As Long, Untergrenze As Long, x As Long
      Dim BuchstabenArray, Index
      Dim Bereich As Range, zelle As Range
      Set Bereich = Range("C4:V23")
      BuchstabenArray = ("a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z,ü,ä,ö")
      Index = Split(BuchstabenArray, ",")
      Obergrenze = 29
      Untergrenze = 1
      For Each zelle In Bereich
          x = Int((Obergrenze - Untergrenze + 1) * Rnd + Untergrenze)
          zelle.Value = Index(x - 1)
      Next zelle
    End Sub
  • Schließe den VBA-Editor und führe das Makro aus, um die Buchstaben zu generieren.


Häufige Fehler und Lösungen

Fehler 1: Der Zufallsbuchstabe wird nicht generiert.
Lösung: Stelle sicher, dass die Formel korrekt eingegeben wurde und dass die Zellen im richtigen Format (z. B. Standard oder Text) formatiert sind.

Fehler 2: Umlaute erscheinen nicht korrekt.
Lösung: Überprüfe die erweiterte Formel und stelle sicher, dass alle Umlautzeichen richtig eingegeben sind.

Fehler 3: VBA-Makro funktioniert nicht.
Lösung: Aktiviere die Makros in Excel, indem du zu Datei > Optionen > Trust Center > Einstellungen für das Trust Center > Makroeinstellungen gehst und die entsprechenden Optionen auswählst.


Alternative Methoden

Neben den oben genannten Methoden gibt es weitere Ansätze, um einen Buchstaben-Zufallsgenerator zu erstellen:

  • Datenüberprüfung: Erstelle eine Dropdown-Liste mit allen Buchstaben und wähle zufällig einen Buchstaben aus der Liste aus.

  • Verwendung von Add-Ins: Nutze spezielle Excel-Add-Ins, die Zufallsbuchstaben oder -zeichenfolgen generieren können.


Praktische Beispiele

Beispiel 1: Erzeuge eine zufällige Zeichenfolge aus Buchstaben in Zelle A1:

=VERKETTEN(ZEICHEN(ZUFALLSZAHL()*25+97),ZEICHEN(ZUFALLSZAHL()*25+97),ZEICHEN(ZUFALLSZAHL()*25+97))

Beispiel 2: Generiere eine 20x20-Matrix mit zufälligen Buchstaben:

  • Verwende die oben beschriebene VBA-Methode, um die Buchstaben in den Zellen C4 bis V23 zu füllen.

Tipps für Profis

  • Experimentiere mit der VBA-Funktion Rnd, um verschiedene Zufallsalgorithmen zu testen.
  • Verwende die Funktion ZUFALLSBEREICH, um gezielt Buchstaben oder Zahlen innerhalb eines bestimmten Bereichs zu generieren.
  • Kombiniere Buchstaben und Zahlen, um einen erweiterten Zufallsgenerator zu erstellen.

FAQ: Häufige Fragen

1. Wie funktionieren Zufallszahlen in Excel?
Zufallszahlen in Excel werden mit der Funktion ZUFALLSZAHL() erzeugt, die eine Zahl zwischen 0 und 1 zurückgibt. Für ganze Zahlen innerhalb eines bestimmten Bereichs kannst du ZUFALLSBEREICH() verwenden.

2. Kann ich auch Buchstaben und Zahlen kombinieren?
Ja, du kannst eine erweiterte Formel oder ein VBA-Makro nutzen, um sowohl Buchstaben als auch Zahlen in einer Zufallsreihe zu generieren.

3. Welche Excel-Version benötige ich?
Die meisten der genannten Funktionen sind in Excel 2007 und späteren Versionen verfügbar. Achte darauf, dass dein Excel VBA unterstützt, wenn du Makros verwenden möchtest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige