PDA

Vollständige Version anzeigen : Mehrfach genannte Wörter und Zahlen löschen mit Makro


Morpheus1181
21.11.2008, 10:38
Hallo Leute!
Ich habe ein Problem, bei dem ich nicht alleine weiter komme.
Ich möchte aus einer Zelle alle Wörter, die sich wiederholen und alle Zahlen entfernen und dann das Ergebnis in einer anderen Zelle haben. Ist dies mit einem Makro möglich?
Wäre echt klasse, wenn mir jemand dabei helfen könnte.

Danke im Voraus.

Gruss Morpheus

ransi
21.11.2008, 10:56
HAllo

Sollen mehrfach vorkommende Worte komplett rausgeschmissen werden, oder möchtest du das erste Vorkommen behalten ?
Also nur "Unikate" ?

ransi

Morpheus1181
21.11.2008, 14:09
Hallo ransi,

die Wörter sollen nicht komplett herausgeschmissen werden. Die erste Nennung des Wortes sollte bestehen bleiben.

Gruss Morpheus

ransi
21.11.2008, 14:29
HAllo Morpheus

Als Ansatz:
Packe diesen Code mal in ein Modul:
<nobr><span style="font-family:Courier New,Arial; font-size:9pt ;" ><span style="color:#008000"; >' **********************************************************************</span><br /><span style="color:#008000"; >' Modul: Modul1 Typ: Allgemeines Modul</span><br /><span style="color:#008000"; >' **********************************************************************</span><br /><br /><span style="color:#000080"; >Option</span> <span style="color:#000080"; >Explicit</span><br /><br /><br /><b><span style="color:#000080"; >Public</span> <span style="color:#000080"; >Function</span> machs(zelle)</b><br /><span style="color:#000080"; >Dim</span> RegEx <span style="color:#000080"; >As</span> <span style="color:#000080"; >Object</span><br /><span style="color:#000080"; >Dim</span> MyDic <span style="color:#000080"; >As</span> <span style="color:#000080"; >Object</span><br /><span style="color:#000080"; >Dim</span> Wort <span style="color:#000080"; >As</span> <span style="color:#000080"; >Object</span><br /><span style="color:#000080"; >Dim</span> Alle_Worte <span style="color:#000080"; >As</span> <span style="color:#000080"; >Object</span><br /><span style="color:#000080"; >Dim</span> sText <span style="color:#000080"; >As</span> <span style="color:#000080"; >String</span><br /><span style="color:#000080"; >Set</span> RegEx = CreateObject(<span style="color:#800000"; >"Vbscript.Regexp"</span>)<br /><span style="color:#000080"; >Set</span> MyDic = CreateObject(<span style="color:#800000"; >"Scripting.Dictionary"</span>)<br />MyDic.comparemode = 1 <span style="color:#008000"; >'GROSS-kleinschreibung beachten</span><br />sText = zelle.Text<br /><span style="color:#000080"; >With</span> RegEx<br />&nbsp;&nbsp;&nbsp;&nbsp;.Global = <span style="color:#000080"; >True</span><br />&nbsp;&nbsp;&nbsp;&nbsp;.Pattern = <span style="color:#800000"; >"[A-Za-z&auml;&ouml;&uuml;&szlig;&Auml;&Ouml;&Uuml;]+"</span> <span style="color:#008000"; >'Erstellt eine Wortliste</span><br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >Set</span> Alle_Worte = .Execute(sText)<br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >For</span> Each Wort In Alle_Worte<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;MyDic(Wort.Value) = 0 <span style="color:#008000"; >'Sammelt nur die ersten Vorkommen.(Also nur Unikate)</span><br />&nbsp;&nbsp;&nbsp;&nbsp;<span style="color:#000080"; >Next</span><br /><span style="color:#000080"; >End</span> <span style="color:#000080"; >With</span><br />machs = Join(MyDic.keys, <span style="color:#800000"; >" "</span>) <span style="color:#008000"; >'Setzt die Unikate wieder zusammen.Getrennt durch " ".</span><br /><b><span style="color:#000080"; >End</span> <span style="color:#000080"; >Function</span></b><br /></span></nobr>

Der Aufruf in einer Tabelle geht dann so:
<b>Tabelle1</b><br /><br /><table border="1" cellspacing="0" cellpadding="0" style="font-family:Arial,Arial; font-size:10pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "> <colgroup><col style="font-weight:bold; width:30px; " /><col style="width:373px;" /><col style="width:277px;" /></colgroup><tr style="background-color:#cacaca; text-align:center; font-weight:bold; font-size:8pt; "><td >&nbsp;</td><td >A</td><td >B</td></tr><tr style="height:153px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >1</td><td >Hallo Leute!<br />Ich habe ein Problem, bei dem ich nicht alleine weiter komme.<br />Ich m&ouml;chte aus einer Zelle alle W&ouml;rter, die sich wiederholen und alle Zahlen entfernen und dann das Ergebnis in einer anderen Zelle haben. Ist dies mit einem Makro 12 m&ouml;glich?<br />W&auml;re echt klasse, wenn mir jemand dabei helfen k&ouml;nnte.<br />Danke im Voraus.<br />Gruss Morpheus</td><td >Hallo Leute Ich habe ein Problem bei dem nicht alleine weiter komme m&ouml;chte aus einer Zelle alle W&ouml;rter die sich wiederholen und Zahlen entfernen dann das Ergebnis in anderen haben Ist dies mit einem Makro m&ouml;glich W&auml;re echt klasse wenn mir jemand dabei helfen k&ouml;nnte Danke im Voraus Gruss Morpheus</td></tr></table><br /><table style="font-family:Arial; font-size:10pt; border-style: groove ;border-color:#00ff00;background-color:#fffcf9; color:#000000; "><tr><td ><b>Formeln der Tabelle</b></td></tr><tr><td ><table border = "1" cellspacing="0" cellpadding="2" style="font-family:Arial; font-size:9pt;"><tr style="background-color:#cacaca; font-size:10pt;"><td >Zelle</td><td >Formel</td></tr><tr><td >B1</td><td >=machs(A1)</td></tr></table></td></tr></table> <br /><br /><span style="font-family:Arial; font-size:9pt; font-weight:bold;background-color:#ffffff; color:#000000; ">Excel Tabellen im Web darstellen &gt;&gt; </span><a style ="font-family:Arial; font-size:9pt; color:#fcf507; background-color:#800040; font-weight:bold;" href="http://www.excel-jeanie-html.de" target="_blank"> Excel Jeanie HTML 4 </a>

ransi

Morpheus1181
21.11.2008, 14:54
Danke ransi, klappt super!!!

ransi
25.11.2008, 18:05
HAllo Morpheus

Wenn du die Zahlen auch behalten willst, versuch mal dieses Pattern:
<nobr><span style="font-family:Courier New,Arial; font-size:9pt ;" >.Pattern = <span style="color:#800000"; >"[\dA-Za-z&auml;&ouml;&uuml;&szlig;&Auml;&Ouml;&Uuml;]+"</span> <span style="color:#008000"; >'Erstellt eine Wortliste. Zahlen werden wie Buchstaben behandelt.</span><br /></span></nobr>

<b>Tabelle1</b><br /><br /><table border="1" cellspacing="0" cellpadding="0" style="font-family:Arial,Arial; font-size:10pt; background-color:#ffffff; padding-left:2pt; padding-right:2pt; "> <colgroup><col style="font-weight:bold; width:30px; " /><col style="width:358px;" /><col style="width:352px;" /></colgroup><tr style="background-color:#cacaca; text-align:center; font-weight:bold; font-size:8pt; "><td >&nbsp;</td><td >A</td><td >B</td></tr><tr style="height:153px ;" ><td style="font-size:8pt; background-color:#cacaca; text-align:center; " >1</td><td >Hallo Leute!<br />Ich habe ein Problem, bei dem ich nicht alleine weiter komme.<br />Ich m&ouml;chte aus einer Zelle alle W&ouml;rter, die sich wiederholen und alle Zahlen entfernen und dann das Ergebnis in einer anderen Zelle haben. Ist dies mit einem Makro 12 m&ouml;glich?<br />W&auml;re echt klasse, wenn mir jemand dabei helfen k&ouml;nnte.<br />Danke im Voraus.<br />Gruss Morpheus</td><td >Hallo Leute Ich habe ein Problem bei dem nicht alleine weiter komme m&ouml;chte aus einer Zelle alle W&ouml;rter die sich wiederholen und Zahlen entfernen dann das Ergebnis in anderen haben Ist dies mit einem Makro 12 m&ouml;glich W&auml;re echt klasse wenn mir jemand dabei helfen k&ouml;nnte Danke im Voraus Gruss Morpheus</td></tr></table><br /><table style="font-family:Arial; font-size:10pt; border-style: groove ;border-color:#00ff00;background-color:#fffcf9; color:#000000; "><tr><td ><b>Formeln der Tabelle</b></td></tr><tr><td ><table border = "1" cellspacing="0" cellpadding="2" style="font-family:Arial; font-size:9pt;"><tr style="background-color:#cacaca; font-size:10pt;"><td >Zelle</td><td >Formel</td></tr><tr><td >B1</td><td >=machs(A1)</td></tr></table></td></tr></table> <br /><br /><span style="font-family:Arial; font-size:9pt; font-weight:bold;background-color:#ffffff; color:#000000; ">Excel Tabellen im Web darstellen &gt;&gt; </span><a style ="font-family:Arial; font-size:9pt; color:#fcf507; background-color:#800040; font-weight:bold;" href="http://www.excel-jeanie-html.de" target="_blank"> Excel Jeanie HTML 4 </a>


ransi

Morpheus1181
26.11.2008, 16:11
Nochmals Danke für die Hilfe...