sonderzeichen



Excel-Version: 8.0 (Office 97)
nach unten

Betrifft: sonderzeichen
von: jhaustein
Geschrieben am: 30.05.2002 - 09:14:20

hallo gemeinschaft

habe einen zeilenvorschub in manchen zellen und möchte diesen durch vba wieder herausnehmen - weiss im moment aber nicht welches kürzel es ist wie z.b. chr(10)
könnt ihr da helfen

:-) jörg

nach oben   nach unten

Re: sonderzeichen
von: thomas K.
Geschrieben am: 30.05.2002 - 09:45:15

versuche es mal mit (suchen/ersetzen)

ActiveSheet.Cells.Replace What:=Chr(10), Replacement:=" ",LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False

nach oben   nach unten

hab ich geht nicht
von: jhaustein
Geschrieben am: 30.05.2002 - 10:42:57

hab ich geht nicht

nach oben   nach unten

Re: hab ich geht nicht
von: thomas
Geschrieben am: 30.05.2002 - 10:55:00

Hast du wirkliche Zeilenumbrüche, oder ist es nur ein automatischer Zeilenumbruch der bei größerer Zeilenbreite verschwindet?

nach oben   nach unten

Re: hab ich geht nicht
von: jhaustein
Geschrieben am: 30.05.2002 - 10:59:13

nein ein richtiger zeilenumbruch mit dem sonderzeichen dazwischen

nach oben   nach unten

Re: hab ich geht nicht
von: thoma
Geschrieben am: 30.05.2002 - 11:17:29

Kannst du mir ein leeres Tabelenblatt, nur mit dem Inhalt einer solchen Zelle zumailen?
t.kahnt@ndr.de

nach oben   nach unten

Re: hab ich geht nicht
von: Harald Kapp
Geschrieben am: 30.05.2002 - 13:14:53

Hallo Alle,

ein Zeilenumbruch besteht in alter DOS Manier aus zwei Zeichen:

Wagenrücklauf = CR = 0x0D und
Zeilenvorschub = LF = 0x0A

Wenn man also chr(13) UND chr(10) entfernt, dann müsste es klappen.

Unter Unix ist übrigens nur 0x0A gebräuchlich - irgendwie muss man sich ja voneinander unterscheiden :-)

Gruß Harald

P.S.: Falls gar nichts hilft, könnte man mal mit einem Hex-Editor in der Originaldatei nachgucken, wie der Zeilenumbruch dort abgelegt ist. Z.B. dem sehr guten Freeware Editor XVI32, zu finden unter: http://www.chmaas.handshake.de/delphi/freeware/xvi32/xvi32.htm

Harald

nach oben   nach unten

Probier mal das ......
von: thomas
Geschrieben am: 30.05.2002 - 14:13:10

Versuche es jetzt mal:
Ich habe vor den in die zweite Spalte kopierten Inhalt ein
"Hochkomma" gesetzt, damit es als TEXT eingefügt wird

Gruß Thomas


Sub ZeilenumbruchEntfernen()

Dim As String, b As String
    z = True
    On Error Resume Next
    While z = True
    
    Cells.Find(What:=vbLf, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
    :=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
    False).Activate
      If InStr(1, ActiveCell.Value, vbLf) Then
          a = Left(ActiveCell.Value, InStr(1, ActiveCell.Value, vbLf) - 1)
          b = Mid(ActiveCell.Value, InStr(1, ActiveCell.Value, vbLf) + 1)
          ActiveCell.Value = a
          ActiveCell.Offset(0, 1).Value = "'" & b
      Else: z = False
      End If
    Wend
ende:
End Sub


nach oben   nach unten

Re: Probier mal das ......
von: jhaustein
Geschrieben am: 30.05.2002 - 14:57:21

kannst du nochmal in deinem postkasten schaun?

:-)
jörg

nach oben   nach unten

Auf deine letzte Frage.....
von: thomas
Geschrieben am: 30.05.2002 - 16:21:57


Sub ZeilenumbruchEntfernen()
Application.ScreenUpdating = True
Dim As String, b As String, i%, TXT$, TXT1$

z = True
On Error Resume Next
    
While z = True
Cells.Find(What:=vbLf, After:=ActiveCell, LookIn:=xlFormulas, LookAt _
:=xlPart, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:= _
False).Activate
TXT = ActiveCell.Value
    
If InStr(TXT, vbLf) > 1 Then
While InStr(TXT, vbLf) > 1
i = i + 1
TXT1 = Left(TXT, InStr(TXT, vbLf) - 1)
TXT = Right(TXT, Len(TXT) - InStr(TXT, vbLf))
Cells(ActiveCell.Row, i).Value = "'" & TXT1
Wend
i = i + 1
Cells(ActiveCell.Row, i) = "'" & TXT
i = 0
Else: z = False
End If
Wend
End Sub



nach oben   nach unten

geht leider nicht
von: jhaustein
Geschrieben am: 30.05.2002 - 16:32:04

geht leider nicht

 nach oben

Beiträge aus den Excel-Beispielen zum Thema "sonderzeichen"