Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1172to1176
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

alle Vokale in einem String

alle Vokale in einem String
ing.grohn
Hallo Forum,
ich möchte aus einem String alle Vokale ermitteln, aus dem String entfernen und dann in einem neuen String umgekehrt wieder aneinanderreihen.
Einen kleinen Ansatz hab ich schon:
Tabelle3
 ABCD
1Vorgabe  Auffenwasser 
2       
3Umlaute etc. wandeln  Auffenwasser 
4Vokale entfernen  FFNWSSR 
5A  1A
6E  5E
7I  #WERT! 
8O  #WERT! 
9U  2U
10       
11Umgekehrt verketten    UEA

verwendete Formeln
Zelle Formel Bereich
C3 =WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(C1;"ß";"ss");"ä";"ae");"ö";"oe");"ü";"ue");"Ü";"Ue");"Ö";"Oe");"Ä";"Ae") 
C4 =WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(WECHSELN(GROSS(C3);"A";"");"E";"");"I";"");"O";"");"U";"");"SCH";"Y") 
C5 =SUCHEN("A";GROSS(C1);1) 
D5 =WENN(ISTFEHLER(C5*1);"";GROSS(TEIL(C3;C5;1))) 
C6 =SUCHEN("E";GROSS(C1);1) 
D6 =WENN(ISTFEHLER(C6*1);"";GROSS(TEIL(C3;C6;1))) 
C7 =SUCHEN("I";GROSS(C1);1) 
D7 =WENN(ISTFEHLER(C7*1);"";GROSS(TEIL(C3;C7;1))) 
C8 =SUCHEN("O";GROSS(C1);1) 
D8 =WENN(ISTFEHLER(C8*1);"";GROSS(TEIL(C3;C8;1))) 
C9 =SUCHEN("U";GROSS(C1);1) 
D9 =WENN(ISTFEHLER(C9*1);"";GROSS(TEIL(C3;C9;1))) 
D11 =VERKETTEN(D9;D8;D7;D6;D5) 

Tabellendarstellung in Foren Version 5.28


Kann mir jemand weiterhelfen?
Vielen herzlichen Dank
Mit freundlichen Grüßen
Albrecht

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: alle Vokale in einem String
19.08.2010 09:29:58
JogyB
Hallo Albrecht,
braucht zwar viele Hilfszeilen, aber eine bessere Lösung ist mir nicht eingefallen.
https://www.herber.de/bbs/user/71126.xls
Gruß, Jogy
AW: alle Vokale in einem String
19.08.2010 12:11:12
ing.grohn
Hallo Jogy,
recht herzlichen Dank für Deinen Lösungsvorschlag.
Bin mir sicher, dass das passt.
(ich denke, in VBA ist das einfacher!)
Vielen Dank und einen schönen Tag
Mit freundlichen Grüßen
Albrecht
AW: alle Vokale in einem String
19.08.2010 13:08:50
JogyB
Hallo Albrecht,
in VBA ist das natürlich einfacher, dachte Du wolltest unbedingt eine Formellösung:
Public Function VokaleVerkehrt(myRng As Range) As Variant
Dim regEx As Object
Dim treFFer As Object
Dim i As Long
On Error GoTo errorHandler
' Regulären Ausdruck erzeugen
Set regEx = CreateObject("VbScript.Regexp")
With regEx
' Suchmuster, also alle Vokale
.Pattern = "[aeiou]"
' Groß/Kleinschreibung egal
.IgnoreCase = True
' und alles soll gefunden werden
.Global = True
' Suche ausführen
Set treFFer = regEx.Execute(myRng.Text)
' Und nun die Treffer in umgekehrter Reihenfolge auslesen
' (ACHTUNG: beginnt bei 0!)
For i = treFFer.Count - 1 To 0 Step -1
VokaleVerkehrt = VokaleVerkehrt & UCase(treFFer.Item(i).Value)
Next
End With
' Falls es leer ist, würde wegen der Variant-Deklaration eine
' 0 in die Zelle eingetragen, deswegen explizite Zuweisung
' eines Strings
If VokaleVerkehrt = "" Then VokaleVerkehrt = vbNullString
Exit Function
errorHandler:
' Bei einem Fehler wird ein Fehlerwert ausgegeben
VokaleVerkehrt = CVErr(xlErrValue)
End Function

Das in ein allgemeines Modul, dann kannst Du es als UDF ansprechen.
Gruß, Jogy
Anzeige
AW: geht auch in VBA
19.08.2010 16:40:29
ing.grohn
Hallo Jogi,
das war sehr nett von Dir die Lösung auch in VBA zu programmieren.
Ich wollte aber die Lösung in Excel.
Trotzdem recht herzlichen Dank
Mit freundlichen Grüßen
Albrecht
Na und?! Verwende den udF-Namen in...
19.08.2010 19:33:38
Luc:-?
…einer Zell-Formel, Albrecht!
Gruß Luc :-?
AW: Na und?! Verwende den udF-Namen in...
19.08.2010 21:01:52
ing.grohn
Hi Luc,
kein Problem mit udF aber mit Excel.
Deshalb wollte ich gern die Lösung als Excel-Formel(n).
Mir ist aufgefallen, dass ich häufiger udFs einsetze, wo andere mit Excelfunktionen arbeiten
Mit freundlichen Grüßen
Albrecht
AW: Na und?! Verwende den udF-Namen in...
20.08.2010 07:29:13
JogyB
Hallo Albrecht,
ist mir auch vor 2-3 Jahren aufgefallen und ich nutze seither deutlich mehr Formeln. Nur in dem Fall würde ich dann doch auf die UDF zurückgreifen, vor allem weil die völlig unabhängig von der Länge des Textes funktioniert. Meine Formellösung ist doch eine Krankheit mit vielen Hilfszeilen, aber eine bessere Lösung fällt mir grade nicht ein ;).
Gruß, Jogy
Anzeige
Pflichte Jogy bei, auch, wenn es bestimmt...
20.08.2010 11:48:43
Luc:-?
…noch eine kürzere StanddFktsFmlVersion geben mag, Albrecht…
Viele mehr oder weniger raffinierte StanddFmlLösungen sind einfach zu lang und unübersichtlich und deshalb idR auch nicht praxistauglicher als eine udF-Lösung, denn bei der muss man ja als Anwender auch nicht unbedingt wissen wie sie fktt (nur, wie sie anzuwenden ist), Hptsache sie tut, was sie soll! ;-)
Außerdem gibt es für manchen Problemkreis keine Standardfkt u. damit oft auch keine StanddFmlLösung…
Gruß+schöWE, Luc :-?
AW: alle Vokale in einem String
19.08.2010 21:50:05
ing.grohn
Hallo Jogy,
kannst Du mir sagen/zeigen (wai) wo ich Infos zu "VbScript.Regexp"
bekomme (finde ich sehr interessant!!)
(googlen hat nicht viel gebracht!)
Mit freundlichen Grüßen
Albrecht
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige