Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1576to1580
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

Zeichen aus String entfernen

Zeichen aus String entfernen
31.08.2017 23:57:39
snewi
Ich kopiere mir aus einer Spalte mehrere Strings in eine andere Spalte!
Sheets("Tabelle1").Columns("D:D").Copy
Sheets("Tabelle2").Columns("H:H").PasteSpecial xlPasteValues
Jetzt steht in jeder Zeile der Spalte immer ein "... mehr" mit im Text! Diesen möchte ich aber nicht mitkopieren! es steht immer ganz am Ende des Strings!
Wie funktioniert das?
Gruss

13
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zeichen aus String entfernen
01.09.2017 00:05:07
Joni
Hi,
führe am Ende für die Spalte H ein Suchen nach "... mehr" / Ersetzen durch "" aus.
Schon erledigt.
Gruß Joni
AW: Zeichen aus String entfernen
01.09.2017 00:31:22
Piet
Hallo snewi
du hast ja die seltsamsen Effekte. Hört sich ein bisschen wie "Poltergeist" an. Verhexter PC (Harry Potter)
Nein im Ernst, ich habe bisher noch nie gehört das Excel beim Kopieren noch einen Text hinten dranhaengt!
Kannst du bitte eine kleine Beispieldatei mit 10-15 anonymen Daten und deinem Original Code erstellen.
Das seltsame Phaenomen würde ich mir gerne mal an einem echten beispiel ansehen!!!
mfg Piet
Das hast du wohl falsch verstanden, ...
01.09.2017 01:27:51
Luc:-?
…Piet;
die ursprüngliche Quelle dieser Texte wdn wohl InternetSeiten von Medien-OnLine-Portalen sein. Dort sind solche Textkürzungen mit Link zum vollständigen unter mehr üblich. Evtl könnten das auch keine 3 Punkte sein, sondern das ASCII-Zeichen 133 (…).
🙈 🙉 🙊 🐵 Morrn, Luc :-?
Besser informiert mit …
Anzeige
Und das hängt sicher mit dem Vorgänger ...
01.09.2017 01:44:16
Luc:-?
…zusammen:
Daten per VBA aus IE auslesen
Erinnerst du dich‽
Luc :-?
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 08:41:39
snewi
Ja genau das ist es! Luc ich lese Daten aus und da ist das eben mit dabei! Wie bekomme ich das beim Kopiervorgang weg?
Gruss
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 09:00:48
UweD
hallo
so?
Sub ddg()
    Dim Wegdamit As String
    
    Wegdamit = "... mehr"
    
    With Sheets("Tabelle2").Columns("H:H")
        .Value = Sheets("Tabelle1").Columns("D:D").Value
        
        .Replace What:="... mehr", Replacement:="", LookAt:=xlPart, _
            SearchOrder:=xlByColumns
    End With

End Sub

LG UweD
Anzeige
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 09:03:29
UweD
natürlich mit der Variable...
        .Replace What:=Wegdamit, Replacement:="", LookAt:=xlPart, _
SearchOrder:=xlByColumns

AW: Danke, habs verstanden
01.09.2017 12:39:19
Piet
Hallo
und Danke an Luc und snewi, bin nach meinem Beitrag schlafen gegangen und sehe erst jetzt eure Antwort.
Der Gedanke ist mir garnicht gekommen, war vielleicht schon zu müde .... (muss mehr auf Details achten)
mfg Piet
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 13:40:28
snewi
Ich übernehme die Werte mit dem ...mehr mit folgendem Coder aus der ersten Tabelle und packe sie in die zweite!:

Sub Copy_Description_Veranstalter()
Dim wks1 As Object
Dim wks2 As Object
Dim cl As Range
Set wks1 = Sheets("Tabelle1")
Set wks2 = Sheets("Tabelle2")
For Each cl In wks1.Range("C2:C" & wks1.Range("C2").End(xlDown).Row).Cells
wks2.Range("G" & cl.Row) = cl & Chr(10) & cl.Offset(0, 2)
Next
End Sub
Hier müsste ich das dann aufrufen? oder wie könnte ich das da einbinden! Oder erst kopieren und hinterher nochmal drüberlaufen lassen`?
Gruss
Anzeige
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 14:04:50
UweD
Hi
wenn du es unbedingt mit einer Schleife Zellenweise machen möchtest, dann ggf. so (ungeprüft)
Sub Copy_Description_Veranstalter()
    Dim wks1 As Object
    Dim wks2 As Object
    Dim cl As Range
    
    Set wks1 = Sheets("Tabelle1")
    Set wks2 = Sheets("Tabelle2")
        
        
    For Each cl In wks1.Range("C2:C" & wks1.Range("C2").End(xlDown).Row).Cells
        wks2.Range("G" & cl.Row) = _
            Replace(cl & Chr(10) & cl.Offset(0, 2), "... mehr", "")
    Next
       
End Sub
LG UweD
Anzeige
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 14:28:21
snewi
Es funktioniert so!
wie hätte denn die andere Variante ausgesehen und wäre diese deiner Meinung besser ?
Gruss
AW: Und das hängt sicher mit dem Vorgänger ...
01.09.2017 15:18:44
UweD
Hallo nochmal
erst wird eine Formel in den gesamten Bereich geschrieben, dann wird das in einen Wert gewechselt.
Sub Copy_Description_Veranstalter()
    Dim wks1 As Object
    Dim wks2 As Object
    Dim cl As Range, LR As Double
    
    Set wks1 = Sheets("Tabelle1")
    Set wks2 = Sheets("Tabelle2")
        
        
    LR = wks1.Range("C2").End(xlDown).Row
    With wks2.Range("G2:G" & LR)
        'Formel in gesamten Bereich 
        '=Tabelle1!C2&ZEICHEN(10)&WECHSELN(Tabelle1!E2;"... mehr";"") 
        
        
        .FormulaR1C1 = "=" & _
            wks1.Name & "!RC[-4]&CHAR(10)&SUBSTITUTE(" & _
            wks1.Name & "!RC[-2],""... mehr"","""")"
        .Value = .Value 'Formel in Wert ändern 
    End With
       
End Sub
LG UweD
Anzeige

44 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige