(16.11.2015, 21:12)WillWissen schrieb: Das wäre eine tolle Sache. Im Forum "Komplettlösungen" wäre für einen Namensgenerator prima Platz. *freu* Es fällt ja immer wieder Usern schwer, eine Tabelle zu anonymisieren.
Moin Günther! Der letzte sieht nicht schlecht aus! Alle haben aber den Nachteil, dass man erst kopieren muss und Text in Spalten durchführen muss. Wenn das so einfach wäre, hätten wir als Helfer in den Foren ja nichts mehr zu tun ... :21:
Mein Ansatz war es eine Excel-Funktion zu erstellen und somit Zufalls-Vor- und Nachnamen direkt in der Tabelle bereitzustellen. Hier wurde ich tatsächlich im WWW nicht fündig! Im Anhang mal ein Archiv mit einer Beispieldatei sowie den beiden .txt-Namenslisten. Bitte in ein Verzeichnis extrahieren, ist bisher ja nur ein Zwischenstand, die UDFs greifen auf ThisWorkbook.Path zu.
Ziel ist natürlich, die Namen als Texte in die Tabelle zu schreiben, das Ganze benutzerfreundlich über ein AddIn mit grafischer Oberfläche.
Die UDFs bedienen sich der zwei prinzipiellen Möglichkeiten des Zugriffs auf eine Textdatei:
Function NachnameZufall() AsString Dim Zufall AsLong, Counter AsLong Zufall = WorksheetFunction.RandBetween(1, 630) 'Pfad anpassen!!! Open ThisWorkbook.Path & "\Nachnamen.txt"ForInputAs #1 DoWhileNot EOF(1) Counter = Counter + 1 LineInput #1, NachnameZufall If Counter = Zufall Then Close #1 ExitFunction EndIf Loop EndFunction
Function VornameZufall(Optional Geschlecht AsString = "a") AsString Dim FSO AsObject Dim arr AsVariant Dim txtDatei AsObject Dim stext AsString Dim Zufall AsLong WithWorksheetFunction SelectCaseCStr(Geschlecht) Case"a": Zufall = .RandBetween(0, 619) Case"m": Zufall = .RandBetween(0, 309) Case"w": Zufall = .RandBetween(310, 619) EndSelect EndWith Set FSO = CreateObject("Scripting.FilesystemObject") Set txtDatei = FSO.opentextfile(ThisWorkbook.Path & "\Vornamen.txt") 'Öffnen stext = txtDatei.readall 'Lesen txtDatei.Close 'Schließen arr = Split(stext, vbCrLf) 'In Zeilen aufteilen VornameZufall = arr(Zufall) EndFunction
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Zitat:Beide würden passen aber ich kann bei beiden keine zusätzliche Zeile einfügen sonst passt das komplette System nicht mehr
da ich dein "komplettes System" nicht kenne, solltest du es uns mal vorstellen. Lies mal bitte hier.
Ich gehe jetzt von meiner eigenen Beispieldatei aus und zeige dir anhand eines "Vorher - Nachher"-Tabellenausschnitts, wie du nach einfügen einer Überschriftenzeile die ersten Formeln anpasst und per Doppelklick auf das Ausfüllkästchen kopierst.
die Generatoren sind ja wirklich nicht schlecht - danke für die Links. Da ich selbst in der Regel ja nur wenige Zeilen in einer Beispielmappe schreibe, habe ich mir nie schwer getan, Namen "zu erfinden". Genügend Farben, Berufe bzw. Fantasienamen à la Grünspan-Hintermooser, Liebling-Mayerle usw. gibt es ja.
@Ralf,
deine Beispielmappe schaue ich mir heute Abend an - muss jetzt gleich nochmal weg. Sieht aber vielversprechend aus.
Gruß Günter Jeder Fehler erscheint unglaublich dumm, wenn andere ihn begehen. angebl. von Georg Christoph Lichtenberg (1742-1799)
17.11.2015, 23:30 (Dieser Beitrag wurde zuletzt bearbeitet: 18.11.2015, 06:24 von WillWissen.
Bearbeitungsgrund: Wegen der besseren Lesbarkeit Smilies abgeschaltet
)
Hallo,
wahnsinn was hier abgeht, finde ich cool wie schnell einen geholfen wird, Danke
Da ich selbst nicht wusste wie das Gebilde was ich aufbauen möchte in Excel funktioniert, entsteht es noch teilweise durch eure Vorschläge. Ziel ist eine Exceltabelle über mehrere Seiten zu erstellen wo quasi alles von selbst befüllt wird und nur ausgedruckt werden muss. Dazu brauche ich natürlich hilfstabellen wie diese.
Ich habe mal dieses Addin ausprobiert mal schauen ob es funktioniert. Also bei der neuen Formel von Jörg erhielt ich eine Fehlermeldung und die von Günther geht zwar die Auswahl mit dem x aber die Sparte wird nur der erst punkt eingetragen. Noch ein anderer Punkt, ich möchte noch mehrere Hilfstabellen auf dieser einbauen. In den Formeln wird aber z.B: die komplette Spalte C:C angesprochen. Kann ich diese auch auf einen Bereich einfach begrenzen oder gibt es dann Probleme ?
im Anhang habe ich dir mal eine Tabelle "zum Spielen" hochgeladen. Tabelle1 funktioniert mit meinem Vorschlag (auf ganze Spalten ausgerichtet). Zusätzlich habe ich dir die Einträge ab Spalte I mit einem SVERWEIS automatisiert. Suchbegriffe müssen eindeutig sein - schau deshalb, wie ich deine Einträge KFZ geändert habe.
Natürlich wieder angepasst auf die tatsächlichen Bereiche.
In Tabelle1 (2) habe ich Jörgs Vorschlag eingearbeitet. Auch hier musste der Bereich an deine Tabelle angepasst werden. Was hast du denn eigentlich für eine Fehlermeldung bekommen? Wenn so etwas auftaucht, solltest du den Helfern den Inhalt der Meldung mitteilen - nur aufgrund der Info, dass eine solche da ist, kann niemand gezielt helfen.
ja du hast recht ich hätte den Fehler beschreiben sollen war mit euren viellen Ideen aber voll überfordert. Jetzt habe ich das auch mit Kfz verstanden, stimmt hast recht muss eindeutig sein.
Habe deine Alternativem mit Sverweis genommen und die Spaltelänge begrenzt.
Danke für eure Hilfe.
Funktioniert. Jetzt muss ich die anderen Bereiche noch einbasteln. Hoffe ich bekomme auch mal was ohne euch hin.