2016-03-29 9 views
0

Guten Nachmittag:vba Ersetzen Sie alles in Blatt mit Platzhalter

Ich wieder;). Es wurde ein anderes Problem festgestellt, bei dem versucht wurde, alle Elemente in einer Spalte zu ersetzen. Ich kann anscheinend keine Platzhalter erhalten, um damit zu arbeiten, wie ich meine replace-Anweisung aufruft. Vielleicht kann mir jemand den Fehler auf meinen Wegen zeigen? Vielen Dank.

Code:

Worksheets(1).Columns("B").Replace _ 
What:="testName", Replacement:="realName", _ 
SearchOrder:=xlByColumns, MatchCase:=false 

Jetzt funktioniert das perfekt, solange meine Daten wie folgt aussieht:

testname 
testName 
testNaMe 

aber wenn meine Daten wie folgt aussieht:

teestName 
TTestname 
teesstname 

Das ist offensichtlich versagt. Gibt es eine Möglichkeit, Platzhalter zu verwenden, mit denen ich meine Suche implementiere, so dass ich nur nach "Name" suchen kann? * Der Charakter scheint nicht so zu funktionieren, wie ich es mir vorstelle (hauptsächlich bash). Vielen Dank.

+0

Andere Seiten, die ich angeschaut habe, scheinen eine extrem andere und robustere Menge an Code zu verwenden als die einfache Aufgabe, die ich zu erreichen versuche. Vielleicht gibt es ein "Gefällt mir" in irgendeiner Form, das in "Wenn" -Aussagen verwendet wird, die ich verwenden könnte? – bluerojo

+1

Statt 'Was: =" testname "' versuche 'Was: =" * testname * "' – BruceWayne

+1

@BruceWayne Ich hätte schwören können, dass ich das und Variationen davon für die letzten 30 Minuten ausprobiert habe und es hat nicht funktioniert. Arbeitete zuerst versuchen, sobald Sie gesagt haben, dass ... Ich muss etwas in meinen ursprünglichen Tests verpasst haben. – bluerojo

Antwort

1

Wenn Sie versuchen, „Testname“ überall in einer Zelle zu finden, fügen Sie dann die * Wildcard für beide Seiten:

Worksheets(1).Columns("B").Replace What:="*testName*", Replacement:="realName", SearchOrder:=xlByColumns, MatchCase:=false 

Und natürlich können Sie auch ="testName*" oder ="*testName" nutzen könnten Zellen übereinstimmen das beginnt oder endet (bzw.) mit "testName".

Verwandte Themen