Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

Zahlen mischen

Mitglied: thorium

thorium (Level 1) - Jetzt verbinden

02.05.2005, aktualisiert 09.05.2005, 8870 Aufrufe, 19 Kommentare

Hallo!

Habe folgendes Problem: Ich habe ein Wort z.B. "Herbstzeit" als String in einzelne Buchstaben zerlegt und jeden Buchstaben eine
Zahl zugeordnet.
Also H=1,E=2 usw. Jetzt möchte ich die Buchstaben bzw. die Zahlen mischen od. anders in der Reihenfolge anordnen.
Mit dem Zufallsgenerator in Excel geht es nicht da doppelte Zahlen generiert werden und =wenn() Abfragen sind zu aufwendig, voralllem wenn die Wörter länger sind.
Mitglied: 8644
02.05.2005 um 08:32 Uhr
Moin,

beschreib mal etwas näher den Sinn der Sache,
da kann man mit Sicherheit was über ein Macro machen.

Psycho
Bitte warten ..
Mitglied: thorium
02.05.2005 um 08:48 Uhr
Der Sinn der Sache ist: Laut "Pisastudie" kann man ein Wort lesen bzw. einen Text
wenn bei jeden Wort der Erste und der letzte Buchstabe an der richtigen Stelle steht und die Buchstaben zwischen ersten und letzten können in der Reihenfolge vertauscht sein ,aber es müssen alle vorhanden sein und trotzdem kann man den text lesen.

z.B. : Herbstzeit vertauscht: Hresbtezit alerldngis bei eniem Wrot shcelhct man baruhct 2 Zielen txet um scih enziuelsen ich hfofe du Hßat vretsadnen.

Gurß Thuirom!
Bitte warten ..
Mitglied: 6907
02.05.2005 um 09:50 Uhr
Hallo, also ich kann dir nur ein Beispiel geben, wie ich es in einer anderen Programmiersprache machen würde:

Als erstes würde ich die Länge des Wortes über die entsprechende Funktion (z. b. length()? ) auslesen lassen und den Wert einer Hilfsvariable (I= length(wort)) zuweisen
Das Wort würde ich nicht in einzelne Strings teilen. Wenn dann würde ich sie in deinem Fall in Felder schreiben, da du dann auch über die indizes diese einfach auslesen kannst.
danach nur noch von 1 (damit der erste buchstabe gleich bleibt) bis I-1 eine for-schleife durchlaufen lassen, in dieser musste dann per random(word[I]) dem word einen neuen wert zuweisen. Dann würde ich nur mit einer weiteren schleife schauen, ob dieser neue wert schon einmal in einem der Felder vorher vergeben wurde, wenn ja, dann neu random ausführen, ansonsten die zählvariable I erhöhen. -> fertig

in anderen Programmiersprachen müssten die begriffe nur anders heißen, aber vom prinzip müsste es so gehen

MfG DeRe666
Bitte warten ..
Mitglied: 8644
02.05.2005 um 11:04 Uhr
Hi,

ich habe hier mal einen Lösungsansatz ohne Macro, allerdings kommt man mit einer Formel nicht hin:

- In die A1 wird der Begriff eingetragen
- In die A3 kommt folgende Formel:
=WENN(LÄNGE($A$1)-2>=1;ZUFALLSZAHL();"")
Diese habe ich bis zur A32 runtergezogen (max. 30 Zeichen pro Begriff)
Der Wert für die Länge wird jeweils um 1 erhöht (>=1,>=2,>=3 ... )
- In die B3 folgende Formel:
=WENN(ISTZAHL(A3);RANG(A3;A$3:A$32);"")
Bis B32 runterziehen
Jetzt haben wir Zufallszahlen, die sich nicht wiederholen und auf die Zeichenlänge
des Begriffes - 2 beschränkt sind.
- In C4 steht diese Formel:
=WENN(ISTZAHL(A3);TEIL($A$1;B3+1;1);"")
damit haben wir die entsprechenden Zeichen gemischt.
Und jetzt kommt etwas Fleißarbeit
- In C1 steht:
=VERKETTEN(LINKS(A1;1);C3;C4;C5;C6;C7;C8;C9;C10;C11;C12;
C13;C14;C15;C16;C17;C18;C19;C20;C21;C22;C23;C24;C25;C26;
C27;C28;C29;C30;RECHTS(A1;1))


Damit hast du Anfangs- und Endbuchstaben an der richtigen Stelle und der Rest ist vertauscht.

Ich hoffe das hilft dir weiter

Psycho

Edit: Die Formel in C4 steht natürlich in C3 und wird auch runtergezogen - sorry
Bitte warten ..
Mitglied: thorium
02.05.2005 um 11:56 Uhr
Danke Psycho Dad!
Aber es wird leider immer ein Buchstabe zuviel generiert, komme aber leider nicht dahinter warum.
Bitte warten ..
Mitglied: 8644
02.05.2005 um 12:01 Uhr
Hi,

hast du das Edit in meinem Beitrag beachtet,

mir ist da ein kleiner Fehler unterlaufen, bei mir klappt es so.

Psycho
Bitte warten ..
Mitglied: thorium
02.05.2005 um 14:26 Uhr
Hallo Psycho Dad

Der letzte Buchstabe in jedem Wort ist leider noch immer doppelt.
Bitte warten ..
Mitglied: 8644
03.05.2005 um 07:19 Uhr
Guten Morgen,

musste gestern weg.

Poste doch mal Deine Formeln, speziell die aus C1, vielleicht kommen wir ja so weiter!

Psycho
Bitte warten ..
Mitglied: thorium
03.05.2005 um 07:59 Uhr
Hallo psycho dad!

Formel aus A3
=WENN(ISTZAHL(A3);RANG(A3;A$3:A$32);"")

Formel aus B3
=WENN(ISTZAHL(A3);RANG(A3;A$3:A$32);"")

Formel aus C1 lautet:
=VERKETTEN(LINKS(A1;1);C3;C4;C5;C6;C7;C8;C9;C10;C11;C12;C13;C14;C15;C16;C17;C18;C19;C20;C21;C22;C23;C24;C25;C26;C27;C28;C29;C30;RECHTS(A1;1))
Das Wort "Walter" ergibt: wlatrer

Wie du siehst kommt das "r" doppelt, passiert immer mit dem letzten Buchstaben eines Wortes. Außerdem =verketten nur bis C30 zu verwenden lt. EXCEL, aber es werden auch Buchst. bis C31 gesetzt und dadurch nicht verwendet.

Gruß Thorium
Bitte warten ..
Mitglied: 8644
03.05.2005 um 08:06 Uhr
Hi,

sieht die Formel in C3 so aus:

=WENN(ISTZAHL(A3);TEIL($A$1;B3+1;1);"")

?

Das mit dem Verketten ist mir auch aufgefallen, könnte man aber ander lösen, wenn es nötig sein sollte.

Psycho

Edit : In der A3 sollte aber folgendes stehen:

=WENN(LÄNGE($A$1)-2>=1;ZUFALLSZAHL();"")
Bitte warten ..
Mitglied: thorium
03.05.2005 um 08:42 Uhr
Hi

Die Formel stimmen so, hab es überprüft!
Bitte warten ..
Mitglied: 8644
03.05.2005 um 08:49 Uhr
Hi,

irgendwas muß anders sein, bei mir kommt folgendes raus:

Walter -> Wetalr
Bitte warten ..
Mitglied: 8644
03.05.2005 um 08:57 Uhr
Ich noch mal,

gib mir doch mal Deine Adresse, dann maile ich Dir meine Datei einfach

Psycho
Bitte warten ..
Mitglied: thorium
03.05.2005 um 09:10 Uhr
Hi
herbert.trombitas@arcs.ac.at
Bitte warten ..
Mitglied: 8644
03.05.2005 um 15:43 Uhr
Hi,

für alle, die es noch interessiert, ich habe da mal ein kleines Tool geschrieben,
mit dem man ganze Text gleichzeitig behandeln kann (es hat mir halt keine Ruhe gelassen)

Mit den Satzzeichen kommt es noch nicht klar, aber vielleicht gibt es ja bald ein Update

Wer Interesse hat kann mir mailen:

psycho-dad-shl@arcor.de

Psycho
Bitte warten ..
Mitglied: Guenni
03.05.2005 um 22:47 Uhr
@thorium

Hi,

öffne eine neue Excel-Tabelle, starte den VB-Editor und füge ein neues Modul ein.

Kopiere folg. Programmcode ein:

<font class="code">Dim Kontrollfeld() As Boolean

Dim Wortfeld() As String

Dim NeuesWort

Dim Gefunden



Function Zufallszahl(Bereich) As Integer

Randomize

Zufallszahl = Int((Bereich * Rnd) + 1)

End Function



Function Buchstabensalat(Wort)

If IsEmpty(Wort) Then Exit Function

ReDim Kontrollfeld(Len(Wort))

For i = 1 To UBound(Kontrollfeld)

Kontrollfeld(i) = False

Next

ReDim Wortfeld(Len(Wort))

For i = 1 To Len(Wort)

Wortfeld(i) = Mid(Wort, i, 1)

Next i

Randomize

z = Zufallszahl(Len(Wort))

Kontrollfeld(z) = True

NeuesWort = Wortfeld(z)

Gefunden = 1

For i = 2 To Len(Wort)

While Kontrollfeld(z) And Gefunden < Len(Wort)

z = Zufallszahl(Len(Wort))

Wend

Gefunden = Gefunden + 1

Kontrollfeld(z) = True

NeuesWort = NeuesWort + Wortfeld(z)

Next

Buchstabensalat = NeuesWort

End Function

</font>

Wechsle zur Tabellenansicht, markiere eine Zelle(z.B. C1) und starte den Funktionsassistenten,wähle Benutzerdefiniert, anschließend
die Funktion Buchstabensalat. Im folg. Dialog gibst du die Zelle ein(z.B. A1), die dein zu verdrehendes Wort enthalten soll
und bestätigst mit OK.

Oder gib direkt in eine Zelle(z.B. C1) ein: =Buchstabensalat(A1).

Wenn du nun in A1 ein Wort eingibst, erscheint es in C1 verdreht.

Ich wollte noch ein paar Kommentare schreiben, hatte aber keine Zeit mehr.
Hole ich aber nach, wenn's dich interessiert.

Gruß
Günni

PS.: Hatte übersehen, dass der 1. und der letzte Buchstabe bleiben müssen. Hol ich nach.
Bitte warten ..
Mitglied: Guenni
05.05.2005 um 10:20 Uhr
Programmode, bei dem 1. und letzter Buchstabe im verdrehten Wort stehen bleiben
01.
Dim Kontrollfeld() As Boolean 'Hier werden Zahlen gespeichert, die schon "gezogen" wurden
02.

03.
Dim Wortfeld() As String 'Das Ursprungswort wird hier in Buchstaben zerlegt
04.

05.
Dim NeuesWort 'Das neue, verdrehte Wort
06.

07.
Dim Gefunden 'Kontrollvariable
08.

09.

10.

11.
'Ermittelt Zufallszahlen aus dem Bereich 1 -n(Wortlänge)
12.

13.
'Wortlänge wird in der Hauptfunktion als Parameter übergeben
14.

15.
Function Zufallszahl(Bereich) As Integer
16.

17.
 Randomize
18.

19.
 Zufallszahl = Int((Bereich * Rnd) + 1)
20.

21.
End Function
22.

23.

24.

25.
'Hauptfunktion
26.

27.
Function Buchstabensalat(Wort) 'Wort wird im Tabellenblatt durch eine Zelle ersetzt, z.B. A1
28.

29.
 If IsEmpty(Wort) Then Exit Function 'Unterdrückt Fehlermeldung, wenn Zelle leer ist
30.

31.
 ReDim Kontrollfeld(Len(Wort)) 'Kontrollfeld an Wortlänge anpassen
32.

33.
 For i = 1 To UBound(Kontrollfeld) 'Kontrollfeld initialisieren
34.

35.
  Kontrollfeld(i) = False
36.

37.
 Next
38.

39.
 ReDim Wortfeld(Len(Wort)) 'Wortfeld an Wortlänge anpassen
40.

41.
 For i = 1 To Len(Wort) 'Wort in Buchstaben zerlegen, und die Buchstaben in Wortfeld einfügen
42.

43.
  Wortfeld(i) = Mid(Wort, i, 1)
44.

45.
 Next i
46.

47.
 Kontrollfeld(1) = True 'Erster Buchstabe soll nicht per Zufall ermittelt werden
48.

49.
 Kontrollfeld(Len(Wort)) = True 'Letzter Buchstabe soll nicht per Zufall ermittelt werden
50.

51.
 NeuesWort = Wortfeld(1) 'Erster Buchstabe wird eingefügt
52.

53.
 Gefunden = 1 'Erster Buchstabe gefunden
54.

55.
 For i = 2 To Len(Wort) 'In der For-Schleife werden nun die Buchstaben 2 - n per Zufall ermittelt
56.

57.
  'While-Schleife läuft solange,
58.

59.
  'a: ein gefundener Wert bereits vorhanden ist
60.

61.
  'b: oder bereits alle Buchstaben vertauscht wurden
62.

63.
  While Kontrollfeld(z) And Gefunden < Len(Wort)
64.

65.
   z = Zufallszahl(Len(Wort))
66.

67.
  Wend
68.

69.
  Gefunden = Gefunden + 1 'Kontrollvariable wird solange erhöht, wie Buchstaben vorhanden
70.

71.
  Kontrollfeld(z) = True 'Entsprechendes Feld wird auf TRUE gesetzt
72.

73.
  NeuesWort = NeuesWort + Wortfeld(z) 'Zufällig gef. Buchstabe wird an neues Wort angehangen
74.

75.
 Next
76.

77.
 'Da bereits oben das Finden des letzten Buchstabens ausgeschlossen wurde(Kontrollfeld(Len(Wort)) = True ),
78.

79.
 'muß er nun zum Schluß noch angefügt werden
80.

81.
 NeuesWort = NeuesWort + Wortfeld(Len(Wort))
82.

83.
 Buchstabensalat = NeuesWort 'Das neue Wort wird an die Funktion übergeben
84.

85.
End Function
86.

87.
Bitte warten ..
Mitglied: thorium
09.05.2005 um 08:24 Uhr
Danke für Eure Mühe, aber Psycho Dad hat das Problem bereits mit "normalen Excel Formeln "gelöst.
Bitte warten ..
Mitglied: 8644
09.05.2005 um 12:17 Uhr
Hi,

... trotzdem große Lob an Günni:

riesen Aufwand, toll erklärt!

Psycho
Bitte warten ..
Ähnliche Inhalte
Datenbanken
MSSQL Text in Zahl umwandeln
gelöst Frage von EricAG3Datenbanken1 Kommentar

Hallo zusammen, folgende Tabelle sei gegeben. Menge 5,5 2,5 - 2,5 Das Feld Menge ist vom varchar. Ich möchte ...

C und C++
C Sharp. jede zweite Zahl einlesen
gelöst Frage von Doktore1C und C++4 Kommentare

Hallo liebe Gemeinde. Ich möchte gerne mit einer Schleife eine Zeile einlesen. Danach jede zweite Position ausgeben. Als delimiter ...

Microsoft Office
Excel VBA Zahl von Text trennen
gelöst Frage von abuelitoMicrosoft Office28 Kommentare

Hallo an Alle, ich habe folgendes Problem: In der Spalte A habe ich in den Zellen folgende Werte stehen: ...

Microsoft Office

Outlook 2013 - Excel Anhang durchsuchen nach Zahl

Frage von schoenengutentagMicrosoft Office18 Kommentare

Hallo, besteht irgendwie die Möglichkeit in Outlook die Inhalte der Excelanhänge zu durchsuchen? Text wird in den Excelanhängen richtig ...

Neue Wissensbeiträge
Windows 10

Windows 10: Cortana und die Suche gehen bald wieder eigene Wege

Information von Frank vor 22 MinutenWindows 10

Microsoft hat einen neuen Insider Build von Windows 10 veröffentlicht (Fast Ring, Version 18317), wo die digitale Assistentin "Cortana" ...

Humor (lol)
Und wie seid Ihr gegen Cyberattacken gewappnet?
Information von DerWoWusste vor 1 TagHumor (lol)5 Kommentare

aber wo ist der Hammer? :-)

Sicherheit
Ein weiterer Microsoft-Stirnklatscher
Information von DerWoWusste vor 2 TagenSicherheit8 Kommentare

Habe gerade einen Artikel zu einem Sicherheitsproblem gefunden, welches mir zu seiner Zeit (gepatcht 2015) wohl durchgerutscht ist. Es ...

Windows 10
Upgradepfade Windows 10 LTSC
Erfahrungsbericht von Datenreise vor 2 TagenWindows 10

Nur eine kurze Info, für diejenigen, die es interessiert, da es hierzu im Netz aus nachvollziehbaren Gründen nicht allzu ...

Heiß diskutierte Inhalte
Microsoft
SFirm 4.0 auf Terminalserver startet für jeden angemeldeten Benutzer diverse Dienste
Frage von Frank84Microsoft25 Kommentare

Hallo zusammen, wir verwenden Sfirm 4.0 auf einem Terminalserver (der SQL Server ist auf einem separaten Server), das Problem ...

Windows 10
VM wächst schnell von 14 auf 35 GB an - warum?
Frage von degudejungWindows 1018 Kommentare

Hallo, ich bin ein Freund schlanker VMs und setze daher gerne mit dem Erscheinen einer neuen Win10 Version - ...

Internet
Google-Suchergebnisse, Schnelleinblendung, woher kommt der Inhalt?
gelöst Frage von departure69Internet17 Kommentare

Hallo. Ich bin der Systembetreuer einer kleinen Gemeinde in Süddeutschland. Wir betreiben auch eine Leihbücherei. Eine Kundin hat letzten ...

Switche und Hubs
Kaufempfehlung für einen 24-Port Layer 3-Switch mit 1 GBits
Frage von pianoman82Switche und Hubs15 Kommentare

Hallo! Ich bin aktuell auf der Suche nach einem bezahlbaren Layer-3-Switch mit 24 Ports. Mit bezahlbar meine ich nach ...