in folgendem Beispiel möchte ich bestimmte Zeichen löschen. D.h: die, die keine "richtigen Buchstaben" sind.
https://www.herber.de/bbs/user/69042.xls
Kann mir jemand mit einer entsprechenden Methode weiterhelfen?
Gruß
Karsten
Sub Nur_Text()
Dim Regex As Object
Dim meAr(), strInhalt$
Dim nCount&, lngMaxRow&
With Sheets("Tabelle1") 'Tabelle anpassen
lngMaxRow = .Cells(.Rows.Count, 1).End(xlUp).Row
If lngMaxRow = 1 Then
meAr = .Range("A1", .Cells(lngMaxRow, 1)).Resize(, 2).Value2
Redim Preserve meAr(1 To Ubound(meAr), 1 To 1)
Else
meAr = .Range("A1", .Cells(lngMaxRow, 1)).Value2
End If
Set Regex = CreateObject("Vbscript.Regexp")
With Regex
.MultiLine = True
.Global = True
For nCount = 1 To Ubound(meAr)
.Pattern = "\W|\d"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), " ")
.Pattern = " +"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), " ")
.Pattern = "^ | $"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), "")
Next nCount
End With
.Range("A1").Resize(Ubound(meAr)) = meAr
End With
End Sub
Gruß TinoSub Nur_Text()
Dim Regex As Object
Dim meAr(), strInhalt$
Dim nCount&, lngMaxRow&
Dim oMatch As Object
With Sheets("Tabelle1") 'Tabelle anpassen
lngMaxRow = .Cells(.Rows.Count, 1).End(xlUp).Row
If lngMaxRow = 1 Then
meAr = .Range("A1", .Cells(lngMaxRow, 1)).Resize(, 2).Value2
Redim Preserve meAr(1 To Ubound(meAr), 1 To 1)
Else
meAr = .Range("A1", .Cells(lngMaxRow, 1)).Value2
End If
Set Regex = CreateObject("Vbscript.Regexp")
With Regex
.MultiLine = True
.Global = True
For nCount = 1 To Ubound(meAr)
.Pattern = "[.!?]"
Set oMatch = .Execute(meAr(nCount, 1))
For Each oMatch In oMatch
meAr(nCount, 1) = Left$(meAr(nCount, 1), oMatch.FirstIndex + 1)
Exit For
Next oMatch
.Pattern = "[^A-Za-z .!?,äüöß]"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), " ")
.Pattern = " +"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), " ")
.Pattern = "^ | $"
meAr(nCount, 1) = .Replace(meAr(nCount, 1), "")
Next nCount
End With
.Range("A1").Resize(Ubound(meAr)) = meAr
End With
End Sub
Gruß Tino
For liRow =...
durchläuft Spalte A bis zur letzten, benutzen Zeile, weil ja deine Daten in Spalte A stehen.
For liChar =...
überprüft jedes einzelne Zeichen der Einträge in Spalte A.
Do Until...
werden so lange 2 nebeneinander stehende Leerzeichen durch nur 1 Leerzeichen ersetzt, bis es keine 2 nebeneinander stehende Leerzeichen mehr gibt.
Cells(liRow, 1).Value = Trim(Cells(liRow, 1).Value)
werden auch diese Leerzeichen eliminiert, so dass wirklich nur die Buchstaben übrig bleiben.A | B | |
3 | Æ]/ó·Mæ¿~>ç· 0 | #WERT! |
4 | çSie sahen zu, wie die Sonne unterging.' | Sie sahen zu, wie die Sonne unterging. |
5 | çThey watched the sun setting.0 | They watched the sun setting. |
6 | çThey watched the sun setting.0 | They watched the sun setting. |
7 | çSie sorgte für das Baby, während die Eltern weg waren.A | Sie sorgte für das Baby, während die Eltern weg waren. |
8 | çShe &took care of& the baby while the parents were out.' | She &took care of& the baby while the parents were out. |
9 | ç&Take care& or you will fall.5 | &Take care& or you will fall. |
10 | çEin Lächeln lag auf dem Gesicht des Kindes.2 ~ | Ein Lächeln lag auf dem Gesicht des Kindes. |
11 | çThere was a &smile& on the child's face.3 ~ | There was a &smile& on the child's face. |
12 | çIhr Hund ist ein Schutz gegen Einbrecher.7 } | Ihr Hund ist ein Schutz gegen Einbrecher. |
13 | çTheir dog is a &protection& against burglars.< } | Their dog is a &protection& against burglars. |
14 | çMan kann ein Kind nicht vor jeder Gefahr schützen.< } | Man kann ein Kind nicht vor jeder Gefahr schützen. |
15 | çYou cannot &protect& a child against every danger.. | | You cannot &protect& a child against every danger. |
16 | çPaß auf (auf das), was ich dir sage!+ | | Paß auf (auf das), was ich dir sage! |
17 | çPay attention to what I tell you.> { | Pay attention to what I tell you. |
18 | çIhr Mann merkte nicht, daß sie ein neues Kleid trug.G { | Ihr Mann merkte nicht, daß sie ein neues Kleid trug. |
19 | çHer husband didn't ¬ice& that she was wearing a new dress.E { | Her husband didn't ¬ice& that she was wearing a new dress. |
20 | çIch vermißte meinen Geldbeutel erst, als ich zahlen wollte.8 z | Ich vermißte meinen Geldbeutel erst, als ich zahlen wollte. |
21 | çI only &missed& my purse when I wanted to pay.> z | I only &missed& my purse when I wanted to pay. |
22 | çEine Kapelle wurde zum Andenken an den König gebaut.3 z | Eine Kapelle wurde zum Andenken an den König gebaut. |
23 | çA chapel was built in memory of the king.2 z | A chapel was built in memory of the king. |
24 | çSie hat keine Erinnerung an ihren Vater., y | Sie hat keine Erinnerung an ihren Vater. |
25 | çShe has no &memory& of her father.8 y | She has no &memory& of her father. |
26 | çKönnen wir ihm in dieser Angelegenheit helfen?+ y | Können wir ihm in dieser Angelegenheit helfen? |
27 | çCan we help him in this &matter&?, y | Can we help him in this &matter&? |
28 | çEr redete sehr freundlich mit uns.4 y | Er redete sehr freundlich mit uns. |
29 | çHe talked to us in a very friendly manner.C y | He talked to us in a very friendly manner. |
30 | çDie Art, wie sie sich kleidet, zeugt von gutem Geschmack.4 x | Die Art, wie sie sich kleidet, zeugt von gutem Geschmack. |
31 | çHer &manner& of dressing shows good taste.- x | Her &manner& of dressing shows good taste. |
32 | çEr ging sehr früh von zu Hause weg.9 w | Er ging sehr früh von zu Hause weg. |
33 | çEr versteckte den Brief in seinem Schreibtisch.* w | Er versteckte den Brief in seinem Schreibtisch. |
34 | çHe &hid& the letter in his desk.A v | He &hid& the letter in his desk. |
35 | çEltern können ihre Kinder nicht vor Krankheit schützen.@ v | Eltern können ihre Kinder nicht vor Krankheit schützen. |
36 | çParents cannot &guard& their children against disease.. v | Parents cannot &guard& their children against disease. |
37 | çVergiß nicht, das Licht auszumachen.. u | Vergiß nicht, das Licht auszumachen. |
38 | çDon't &forget& to put out the light. ¤ í ê ¤Q´c8émÐ5ÐR¦=ï¡RÌZ | Don't &forget& to put out the light. |
verwendete Formeln | |
Zelle | Formel |
B3 | =LINKS(TEIL(A3;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A3;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A3;3;999)));FINDEN("!";TEIL(A3;3;999));FINDEN("?";TEIL(A3;3;999)));FINDEN(".";TEIL(A3;3;999)))) |
B4 | =LINKS(TEIL(A4;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A4;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A4;3;999)));FINDEN("!";TEIL(A4;3;999));FINDEN("?";TEIL(A4;3;999)));FINDEN(".";TEIL(A4;3;999)))) |
B5 | =LINKS(TEIL(A5;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A5;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A5;3;999)));FINDEN("!";TEIL(A5;3;999));FINDEN("?";TEIL(A5;3;999)));FINDEN(".";TEIL(A5;3;999)))) |
B6 | =LINKS(TEIL(A6;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A6;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A6;3;999)));FINDEN("!";TEIL(A6;3;999));FINDEN("?";TEIL(A6;3;999)));FINDEN(".";TEIL(A6;3;999)))) |
B7 | =LINKS(TEIL(A7;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A7;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A7;3;999)));FINDEN("!";TEIL(A7;3;999));FINDEN("?";TEIL(A7;3;999)));FINDEN(".";TEIL(A7;3;999)))) |
B8 | =LINKS(TEIL(A8;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A8;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A8;3;999)));FINDEN("!";TEIL(A8;3;999));FINDEN("?";TEIL(A8;3;999)));FINDEN(".";TEIL(A8;3;999)))) |
B9 | =LINKS(TEIL(A9;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A9;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A9;3;999)));FINDEN("!";TEIL(A9;3;999));FINDEN("?";TEIL(A9;3;999)));FINDEN(".";TEIL(A9;3;999)))) |
B10 | =LINKS(TEIL(A10;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A10;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A10;3;999)));FINDEN("!";TEIL(A10;3;999));FINDEN("?";TEIL(A10;3;999)));FINDEN(".";TEIL(A10;3;999)))) |
B11 | =LINKS(TEIL(A11;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A11;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A11;3;999)));FINDEN("!";TEIL(A11;3;999));FINDEN("?";TEIL(A11;3;999)));FINDEN(".";TEIL(A11;3;999)))) |
B12 | =LINKS(TEIL(A12;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A12;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A12;3;999)));FINDEN("!";TEIL(A12;3;999));FINDEN("?";TEIL(A12;3;999)));FINDEN(".";TEIL(A12;3;999)))) |
B13 | =LINKS(TEIL(A13;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A13;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A13;3;999)));FINDEN("!";TEIL(A13;3;999));FINDEN("?";TEIL(A13;3;999)));FINDEN(".";TEIL(A13;3;999)))) |
B14 | =LINKS(TEIL(A14;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A14;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A14;3;999)));FINDEN("!";TEIL(A14;3;999));FINDEN("?";TEIL(A14;3;999)));FINDEN(".";TEIL(A14;3;999)))) |
B15 | =LINKS(TEIL(A15;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A15;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A15;3;999)));FINDEN("!";TEIL(A15;3;999));FINDEN("?";TEIL(A15;3;999)));FINDEN(".";TEIL(A15;3;999)))) |
B16 | =LINKS(TEIL(A16;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A16;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A16;3;999)));FINDEN("!";TEIL(A16;3;999));FINDEN("?";TEIL(A16;3;999)));FINDEN(".";TEIL(A16;3;999)))) |
B17 | =LINKS(TEIL(A17;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A17;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A17;3;999)));FINDEN("!";TEIL(A17;3;999));FINDEN("?";TEIL(A17;3;999)));FINDEN(".";TEIL(A17;3;999)))) |
B18 | =LINKS(TEIL(A18;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A18;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A18;3;999)));FINDEN("!";TEIL(A18;3;999));FINDEN("?";TEIL(A18;3;999)));FINDEN(".";TEIL(A18;3;999)))) |
B19 | =LINKS(TEIL(A19;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A19;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A19;3;999)));FINDEN("!";TEIL(A19;3;999));FINDEN("?";TEIL(A19;3;999)));FINDEN(".";TEIL(A19;3;999)))) |
B20 | =LINKS(TEIL(A20;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A20;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A20;3;999)));FINDEN("!";TEIL(A20;3;999));FINDEN("?";TEIL(A20;3;999)));FINDEN(".";TEIL(A20;3;999)))) |
B21 | =LINKS(TEIL(A21;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A21;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A21;3;999)));FINDEN("!";TEIL(A21;3;999));FINDEN("?";TEIL(A21;3;999)));FINDEN(".";TEIL(A21;3;999)))) |
B22 | =LINKS(TEIL(A22;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A22;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A22;3;999)));FINDEN("!";TEIL(A22;3;999));FINDEN("?";TEIL(A22;3;999)));FINDEN(".";TEIL(A22;3;999)))) |
B23 | =LINKS(TEIL(A23;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A23;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A23;3;999)));FINDEN("!";TEIL(A23;3;999));FINDEN("?";TEIL(A23;3;999)));FINDEN(".";TEIL(A23;3;999)))) |
B24 | =LINKS(TEIL(A24;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A24;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A24;3;999)));FINDEN("!";TEIL(A24;3;999));FINDEN("?";TEIL(A24;3;999)));FINDEN(".";TEIL(A24;3;999)))) |
B25 | =LINKS(TEIL(A25;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A25;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A25;3;999)));FINDEN("!";TEIL(A25;3;999));FINDEN("?";TEIL(A25;3;999)));FINDEN(".";TEIL(A25;3;999)))) |
B26 | =LINKS(TEIL(A26;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A26;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A26;3;999)));FINDEN("!";TEIL(A26;3;999));FINDEN("?";TEIL(A26;3;999)));FINDEN(".";TEIL(A26;3;999)))) |
B27 | =LINKS(TEIL(A27;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A27;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A27;3;999)));FINDEN("!";TEIL(A27;3;999));FINDEN("?";TEIL(A27;3;999)));FINDEN(".";TEIL(A27;3;999)))) |
B28 | =LINKS(TEIL(A28;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A28;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A28;3;999)));FINDEN("!";TEIL(A28;3;999));FINDEN("?";TEIL(A28;3;999)));FINDEN(".";TEIL(A28;3;999)))) |
B29 | =LINKS(TEIL(A29;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A29;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A29;3;999)));FINDEN("!";TEIL(A29;3;999));FINDEN("?";TEIL(A29;3;999)));FINDEN(".";TEIL(A29;3;999)))) |
B30 | =LINKS(TEIL(A30;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A30;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A30;3;999)));FINDEN("!";TEIL(A30;3;999));FINDEN("?";TEIL(A30;3;999)));FINDEN(".";TEIL(A30;3;999)))) |
B31 | =LINKS(TEIL(A31;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A31;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A31;3;999)));FINDEN("!";TEIL(A31;3;999));FINDEN("?";TEIL(A31;3;999)));FINDEN(".";TEIL(A31;3;999)))) |
B32 | =LINKS(TEIL(A32;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A32;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A32;3;999)));FINDEN("!";TEIL(A32;3;999));FINDEN("?";TEIL(A32;3;999)));FINDEN(".";TEIL(A32;3;999)))) |
B33 | =LINKS(TEIL(A33;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A33;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A33;3;999)));FINDEN("!";TEIL(A33;3;999));FINDEN("?";TEIL(A33;3;999)));FINDEN(".";TEIL(A33;3;999)))) |
B34 | =LINKS(TEIL(A34;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A34;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A34;3;999)));FINDEN("!";TEIL(A34;3;999));FINDEN("?";TEIL(A34;3;999)));FINDEN(".";TEIL(A34;3;999)))) |
B35 | =LINKS(TEIL(A35;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A35;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A35;3;999)));FINDEN("!";TEIL(A35;3;999));FINDEN("?";TEIL(A35;3;999)));FINDEN(".";TEIL(A35;3;999)))) |
B36 | =LINKS(TEIL(A36;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A36;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A36;3;999)));FINDEN("!";TEIL(A36;3;999));FINDEN("?";TEIL(A36;3;999)));FINDEN(".";TEIL(A36;3;999)))) |
B37 | =LINKS(TEIL(A37;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A37;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A37;3;999)));FINDEN("!";TEIL(A37;3;999));FINDEN("?";TEIL(A37;3;999)));FINDEN(".";TEIL(A37;3;999)))) |
B38 | =LINKS(TEIL(A38;3;999);WENN(ISTFEHLER(FINDEN(".";TEIL(A38;3;999)));WENN(ISTFEHLER(FINDEN("?";TEIL(A38;3;999)));FINDEN("!";TEIL(A38;3;999));FINDEN("?";TEIL(A38;3;999)));FINDEN(".";TEIL(A38;3;999)))) |