Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Nur bestimmte Wörter aus Zelle löschen
#1
Hallo,

ich möchte ganz bestimmte Wörter die in meiner Tabelle sehr häufig vorkommen löschen. Es soll aber nicht der ganze Inhalt der Zelle gelöscht werden, sondern nur die von mir festgelegten Wörter. In Tabellenblatt 1 in Spalte C stehen bei mir kurze Sätze, diese Spalte soll nach den Wörtern durchsucht werden. Ich habe hierfür bereits eine Lösung gefunden und einen Code erstellt. Er funktioniert auch, nur gibt es etwas das ich noch ändern möchte, doch ich mache irgendwas falsch. Es ist so: Die Wörter nach denen ich suchen möchte stehen bei mir in Tabellenblatt 2, Spalte O, Spalte P ist leer, d. h. Excel sucht nach dem Wort und ersetzt es durch "   ", das Wort wird gelöscht, klappt auch, aber nur wenn sich sowohl die Sätze die durchsucht werden sollen als auch die Wörter nach denen gesucht werden soll im gleichen Tabellenblatt befinden, also alles in Tabellenblatt 1. Ich habe noch einen Code eingefügt der mir die Wörter von Tabellenblatt 2 in Tabellenblatt 1 kopiert, doch das kann man auch anders machen (Suchwörter sollen in Tabellenblatt 2 stehen). Ich weiss dass man Tabellenblätter mit 

With Worksheets("Tabellenblatt 2") ansprechen kann, doch das mag Excel nicht.

Hier mein Code:

Option Explicit
Sub Wörter()
Dim o As Range
For Each o In Intersect(ActiveSheet.UsedRange, Columns(15))
 Columns(3).Replace What:=o, Replacement:=o.Offset(, 3), LookAt:=xlPart, _
   SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
   ReplaceFormat:=False
Next o
End Sub

Würd mich über Hilfe freuen.

Gruß
Antworten Top
#2
Hallo,
Sub WoerterErsetzen()
 Dim o As Range
 With Worksheets("Tabellenblatt 2")
   For Each o In Intersect(.UsedRange, .Columns(15))
     Worksheets("Tabellenblatt 1").Columns(3).Replace What:=o, Replacement:=o.Offset(, 3), LookAt:=xlPart, _
       SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
       ReplaceFormat:=False
   Next o
 End With
End Sub
Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Excel21u
Antworten Top
#3
Danke, ich hab With Worksheets("Tabelle 1") nur in die falsche Zeile geschrieben, so kann es klappen. Jetzt kommt bei mir aber noch eine andere Fehlermeldung.  Excel markiert die zweite zeile "For each p In INTERSECT", und meldet Objekt erforderlich. Woran  kann das liegen?
Antworten Top
#4
Hallo,

probiere es Mal mit Applikation.Intersect

Gruß Uwe
Antworten Top
#5
Hallo,

Korrektur: Application mit c .

Gruß Uwe
[-] Folgende(r) 1 Nutzer sagt Danke an Kuwer für diesen Beitrag:
  • Excel21u
Antworten Top
#6
Ich hab mich vertippt. Sorry, ok es klappt. Thema erledigt. Danke
Antworten Top
#7
Hallo,

vielleicht geht der benutzte Bereich gar nicht bis zur 15. Spalte?

Gruß Uwe
Antworten Top
#8
Code:
Sub M_snb()
  For Each it In activesheet.Columns(15).specialcells(2)
     activesheet.Columns(3).Replace it.value,it.Offset(, 3).value
  Next
End Sub
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste