Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1104to1108
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 Sonderzeichen in String ignorieren

alle Sonderzeichen in String ignorieren
Frank
Guten Abend liebes Forum,
ich erstelle mir derzeit aus einer csv Datei, die ich in Excel importiert habe neue Verzeichnisse. Das heißt ich möchte mein Musikarchiv sortiren auf Grundlage der ID3 Tag Infos. Nur leider ist nicht immer der ID3 Tag sinnvoll und/oder beim Import 4 " - Zeichen vorhanden gewesen (so das Excel durcheinander kommt und falsch trennt), so dass es vorkommen kann, dass in dem neuen Pfad ein " oder andere Sonderzeichen vorkommen können. Wenn ich auf dieser Grundlage versuchen würde neue Verzeichnisse zu erstellen, würde dies zu einer Fehlermeldung führen. Nun meine Frage: Kann man in einem String, der ausgelesen wird, alle Sonderzeichen ignorieren?
Bsp:

D:\Musik\Interpret\D\Dominik Eulberg\ Brenzlich" Dachte"\

Wunsch:

D:\Musik\Interpret\D\Dominik Eulberg\Brenzlich Dachte\

Gruß, Frank
AW: alle Sonderzeichen in String ignorieren
23.09.2009 23:31:36
MichaV
Hallo,
Du kannst mit REPLACE ein Zeichen gegen kein Zeichen austauschen.
Option Explicit
Sub test()
Dim a As String
a = "D:\Musik\Interpret\D\Dominik Eulberg\ Brenzlich"" Dachte""\"
MsgBox a
a = Replace(a, """", "")
MsgBox a
End Sub
Alle Sonderzeichen wird schwer, was sind Sonderzeichen, was nicht?
Gruss- Micha
AW: alle Sonderzeichen in String ignorieren
23.09.2009 23:54:29
Frank
Ich denke da an alle Zeichen, die von Windows angegeben werden, wenn man einen neune Ordner erstellen möchte und Windows streikt...
Ich habe da so einige BUG's in den ID3 Tags, aber das würde zu lange dauern, um alle ordentlich zu beschriften. Dann könnte ich mir das Programm sparen. Bei den Fällen die mir bisher bekannt sind, geht es lediglich um den : "Doppelpunkt" der aus der Zeit stammt und dem " Anführungszeichen.
Gruß, Frank
Anzeige
AW: alle Sonderzeichen in String ignorieren
23.09.2009 23:56:10
Uduuh
Hallo,
vielleicht in der Art:
Sub ttt()
Dim sTmp As String, sText As String, i As Integer
sTmp = "D:\Musik\Interpret\D\Dominik Eulberg\ Brenzlich"" Dachte""\"
sText = Left(sTmp, 3)
For i = 4 To Len(sTmp)
Select Case UCase(Mid(sTmp, i, 1))
Case "A" To "Z", "\"
sText = sText & Mid(sTmp, i, 1)
End Select
Next
MsgBox sText
End Sub

Gruß aus’m Pott
Udo

AW: alle Sonderzeichen in String ignorieren
24.09.2009 00:15:09
Frank
Vieleicht nich ein kleines Beispiel der derzeitgen Ergebnisse:
Musik\Interpret\T\Tocotronic\DWKMNMV 12",3:45"\
Musik\Interpret\R\Royce Da 5'9",Runnin'"\3:06\
Musik\Interpret\J\James Horner\Mr. Murdoch""\
Ich wäre dankbar für jede Hilfe, dass stellt derzeit ein nicht lösbares Problem dar :-)
Gruß und Gute Nacht, Frank
Anzeige
Das ist doch kein Problem, wenn man auf...
24.09.2009 01:28:27
Luc:-?
...Udos Vorschlag aufsetzt und Zeichen für Zeichen vglt, Frank;
bspw so...

Dim a As String, ...
sText = Left(sTmp, 3)
For i = 4 To Len(sTmp)
a = Mid(sTmp, i, 1)
If a Like "[ 0-9A-Za-zÄäÖöÜüß]" Then sText = sText & a
Next i
...
Wenn du die anderen Zeichen nicht weglassen, sondern durch ein bestimmtes ersetzen willst, musst du If... noch mit ...Else... fortsetzen, zB Else sText = sText & " "... Wahrscheinlich wird in diesem Falle auch sText = sText & IIf(a Like "[ 0-9A-Za-zÄäÖöÜüß]", a, " ") fktn.
Außerdem könnte man das evtl beschleunigen, indem man so gleich mehrere Zeichen überprüft. _ Dabei müssen allerdings verbleibende Resttextlängen < hier 3 Zeichen berücksichtigt wdn...

For i = 4 To Len(sTmp) Step 3
a = Mid(sTmp, i, 3)
If a Like WorksheetFunction.Rept("[ 0-9A-Za-zÄäÖöÜüß]", Len(a)) Then sText = sText & a
Next i
Auch das kannst du ggf wie bereits geschildert mit ...Else... ergänzen...
Innerhalb der []-Klammern kannst du auch noch andere zulässige Zeichen notieren. Du kannst aber auch alles umkehren und hier nur die Zeichen notieren, die nicht übernommen wdn sollen. Dann lautet die Vglsmaske Like "[!"":,\...usw]" (vgl VBE-Hilfe →„Operator Like”).
Gruß Luc :-?
Anzeige
AW: alle Sonderzeichen in String ignorieren
24.09.2009 07:44:36
Frank
Guten morgen und vielen Dank an Udo's Grundgedanke bzw. deren Erweiterung durch Luc . Ich werde dann die Problematik heute Abend angehen und gemäß euren Ideen einbauen.
Vielen, vielen Dank. Das hat mir sehr geholfen.
Gruß und eine schönen Tag wünscht, Frank
AW: alle Sonderzeichen in String ignorieren
24.09.2009 09:01:49
Kawensmann
Hallo,
hast du dir mal das Programm mp3tag angesehen? Das ersetzt Zeichen in Tags (unterstützt auch Reguläre Ausdrücke), erstellt Verzeichnisse nach Tags und und und …
www.mp3tag.de
Gruß
Kawensmann

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige