Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
776to780
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
776to780
776to780
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Sonderzeichen am Textende entfernen

Sonderzeichen am Textende entfernen
30.06.2006 09:30:49
kb2stripe
Hallo zusammen,
mit folgendem Modul lese ich von Textdateien die erste Zeile aus und füge sie in Excel in Spalte D als Beschreibung der dazugehörigen Datei ein:
...
DocWd.Range(0, 0).Select
TextWD = DocWd.Bookmarks("\Line").Range.Text
If TextWD &lt&gt "" Then
.Cells(aktZeile, "D") = TextWD
.Cells(aktZeile, "J") = WordDatei
.Cells(aktZeile, "A") = "Wettbewerberinformationen"
.Cells(aktZeile, "B") = "Presseauswertungen"
.Cells(aktZeile, "L") = Left(Cells(aktZeile, 10), Len(Cells(aktZeile, 10)) - 3) & "pdf"
aktZeile = aktZeile + 1
End If
...
Nun habe ich das Problem dass ich dann in Excel in der Spalte zwar die erste Zeile der Datei stehen habe, jedoch direkt hinter dem letzten Wort oder mit einer Leerstelle danach ein Sonderzeichen stehen habe.
Da ich diese Datei später einlesen lassen will, muss ich dieses Sonderzeichen irgendwie entfernt bekommen, weil es nicht von der Datenbank unterstützt wird.
Ich habe euch mal einen Screenshot gemacht wie es aussieht:
http://img163.imageshack.us/img163/9706/fehler5zw.jpg
Hoffe ihr könnt mir helfen,
gruß
Pat

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Sonderzeichen am Textende entfernen
30.06.2006 09:50:24
Peter
Hallo Pat,
da es sich hier sichelich um CarriageReturn oder LineFeed handelt, versuch für die entsprechend Zelle folgendes (hier für A1)
Range("A1").Value = Replace(Range("A1").Value, vbCr, "")
Range("A1").Value = Replace(Range("A1").Value, vbLf, "")
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
AW: Sonderzeichen am Textende entfernen
30.06.2006 09:58:35
kb2stripe
Hallo Peter,
wie und wo baue ich das genau ein? Die Zeile müsste irgendwie automatisch bestimmt werden, da das ganze in einer Schleife laufen soll. hier ist der komplette Code, vllt könntest du mir helfen deine Zeilen an der richtigen Stelle einzufügen und das A1 durch die entsprechende Angabe zu ersetzen, das wäre wirklich super:
Set twb = ThisWorkbook.Worksheets(1)
'der Pfad in dem die Word Dateien liegen, muss mit "\" enden
WordDateiPfad = "C:\Test\"
'Startzeile in der Excel-Datei
aktZeile = 2
'Word-Object erzeugen und öffnen
Set AppWd = CreateObject("Word.Application")
'Schleife für alle Word-Dateien im Verzeichnis
WordDatei = Dir(WordDateiPfad & "*.doc")
With twb
Do While WordDatei &lt&gt ""
'Datei Öffnen (unsichtbar)
AppWd.Visible = False
Set DocWd = AppWd.Documents.Open(WordDateiPfad & WordDatei)
' nichts gelesen
TextWD = ""
'Erste Zeile der Word-Datei auslesen
If InStr(WordDatei, "VOI") &gt 0 Then
DocWd.Range(0, 0).Select
TextWD = DocWd.Bookmarks("\Line").Range.Text
'In Excel schreiben
.Cells(aktZeile, "C") = "Newsletter VoI"
.Cells(aktZeile, "F") = "Verband Organisations- und Informationssysteme"
arrDaten = Split(Right(WordDatei, Len(WordDatei) - InStrRev(WordDatei, "\")), "-")
If UBound(arrDaten) = 4 Then
.Cells(aktZeile, 5) = Format(Replace(arrDaten(3), "_", "."), "DD.MM.YYYY" & " 00:00")
.Cells(aktZeile, 7) = "Abt. " + arrDaten(2)
End If
End If
If InStr(WordDatei, "EBPP") &gt 0 Then
DocWd.Range(0, 0).Select
TextWD = DocWd.Bookmarks("\Line").Range.Text
'In Excel schreiben
.Cells(aktZeile, "C") = "Newsletter EbPP"
.Cells(aktZeile, "F") = "Electronic Bill Presentment and Payment"
arrDaten = Split(Right(WordDatei, Len(WordDatei) - InStrRev(WordDatei, "\")), "-")
If UBound(arrDaten) = 4 Then
.Cells(aktZeile, 5) = Format(Replace(arrDaten(3), "_", "."), "DD.MM.YYYY" & " 00:00")
.Cells(aktZeile, 7) = "Abt. " + arrDaten(2)
End If
End If
If InStr(WordDatei, "BvDP") &gt 0 Then
DocWd.Range(0, 0).Select
TextWD = DocWd.Bookmarks("\Line").Range.Text
'In Excel schreiben
.Cells(aktZeile, "C") = "Newsletter BvDP"
.Cells(aktZeile, "F") = "Bundesverband deutscher Postdienstleister e.V."
arrDaten = Split(Right(WordDatei, Len(WordDatei) - InStrRev(WordDatei, "\")), "-")
If UBound(arrDaten) = 4 Then
.Cells(aktZeile, 5) = Format(Replace(arrDaten(3), "_", "."), "DD.MM.YYYY" & " 00:00")
.Cells(aktZeile, 7) = "Abt. " + arrDaten(2)
End If
End If
If TextWD &lt&gt "" Then
.Cells(aktZeile, "D") = TextWD
Range("D").Value = Replace(Range("D").Value, vbCr, "")
Range("D").Value = Replace(Range("D").Value, vbLf, "")
.Cells(aktZeile, "J") = WordDatei
.Cells(aktZeile, "A") = "Wettbewerberinformationen"
.Cells(aktZeile, "B") = "Presseauswertungen"
.Cells(aktZeile, "L") = Left(Cells(aktZeile, 10), Len(Cells(aktZeile, 10)) - 3) & "pdf"
aktZeile = aktZeile + 1
End If
'aktuelle Worddatei schließen
DocWd.Close savechanges:=False
'nächste Word Datei
WordDatei = Dir()
Loop
End With
'Word schließen und Objekt beenden
AppWd.Quit
Set DocWd = Nothing
Anzeige
AW: Sonderzeichen am Textende entfernen
30.06.2006 12:22:57
Peter
Hallo Pat,
du hast schon eine günstige Stelle gefunden, meine ich.
Ich würde aber so arbeiten:
If TextWD "" Then
.Cells(aktZeile, "D") = TextWD
.cells(aktzeile, "D").Value = Replace(.Cells(aktZeile, "D").Value, vbCr, "")
.cells(aktZeile, "D").Value = Replace(.Cells(aktZeile, "D").Value, vbLf, "")
Viele Grüße Peter
Eine kurze Nachricht, ob es läuft, wäre nett - danke.
AW: Sonderzeichen am Textende entfernen
30.06.2006 12:29:38
kb2stripe
Hi Peter,
vielen Dank für deine Hilfe, jetzt funktioniert es!!!
Viele Grüße,
Pat

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige