PDA

Vollständige Version anzeigen : Problem in Excel


Rainersta
25.09.2007, 17:21
Hallo guten Abend,

jinx
25.09.2007, 17:24
<font size="2" face="Century Gothic">Moin, Raiener,

mit
Hallo guten Abend,
hab ich ein Verstänidproblem - ein wenig mehr Text dürfte es für mich schon sein... ;)</font>

Rainersta
25.09.2007, 17:26
Hallo guten Abend,
ich habe ein Problem in Excel und hoffe,daß mir jemand weiterhelfen kann.

Folgendes Problem: Ich möchte in einem Datenblatt z.Bsp. in der Spalte
" D" die ca 500 Kommentare enthält , alle Kommentare rausfiltern,die
den Namen "Mayer" beinhalten.Diese alle zusammen kopieren und in ein neues
Datenblatt einfügen.Wer kann mir weiterhelfen.Vielen Dank für eine Antwort.
mfg
R.Stapp

EarlFred
25.09.2007, 17:32
<font size="2" face="Century Gothic">Moin, Raiener,

mit ... hab ich ein Verstänidproblem - ein wenig mehr Text dürfte es für mich schon sein... ;)</font>

Wozu? Die Überschrift ist doch selbsterklärend;)

Grüße
EarlFred

jinx
25.09.2007, 17:36
<font size="2" face="Century Gothic">Moin, Rainersta,

in einer Schleife alle Zellen der SpecialCells aus Spalte D mit Kommentar durchlaufen, per Instr prüfen, ob Suchbegriff im Text ist, dann in neues Blatt kopieren, Zähler dort erhöhen...

Übrigens: Du hättest Deinen abgeschickten Beitrag bis zu 120 Minuten nach Erstellung editieren können... ;)

Ich ziehe die SpecialCells zurück - das kann nicht funktionieren :(. Dafür kann die Auflistung der Kommentare durchlaufen werden, Adresse auf Spalte D prüfen...</font>

chris-kaiser
25.09.2007, 17:55
hiho
@ all

habe schnell mal was geschrieben
getestet auf 2003

<FONT FACE="Courier New,FixedSys"Size=2>
<Blockquote>
<FONT COLOR=#0000FF>Option&nbsp;Explicit</FONT>
<FONT COLOR=#0000FF>Sub</FONT>&nbsp;copy_comments()
<FONT COLOR=#008000>'Kaiser&nbsp;25.09.2007</FONT>
<FONT COLOR=#0000FF>Const</FONT>&nbsp;searchCol&nbsp;<FONT COLOR=#0000FF>As&nbsp;Integer</FONT>&nbsp;=&nbsp;4&nbsp;<FONT COLOR=#008000>'Spalte&nbsp;D</FONT>
<FONT COLOR=#0000FF>Dim</FONT>&nbsp;Obgef&nbsp;<FONT COLOR=#0000FF>As&nbsp;Object</FONT>
<FONT COLOR=#0000FF>Dim</FONT>&nbsp;was_wird_gesucht&nbsp;<FONT COLOR=#0000FF>As&nbsp;String</FONT>,&nbsp;firstAddress&nbsp;<FONT COLOR=#0000FF>As&nbsp;String</FONT>,&nbsp;zeile&nbsp;<FONT COLOR=#0000FF>As&nbsp;Long</FONT>
<FONT COLOR=#0000FF>Dim</FONT>&nbsp;shcom&nbsp;<FONT COLOR=#0000FF>As</FONT>&nbsp;Worksheet,&nbsp;shWohin&nbsp;<FONT COLOR=#0000FF>As</FONT>&nbsp;Worksheet
<FONT COLOR=#0000FF>Set</FONT>&nbsp;shcom&nbsp;=&nbsp;Sheets("Tabelle1")&nbsp;<FONT COLOR=#008000>'anpassen&nbsp;wie&nbsp;hei&szlig;t&nbsp;das&nbsp;Blatt&nbsp;mit&nbsp;den&nbsp;Komm.</FONT>
<FONT COLOR=#0000FF>Set</FONT>&nbsp;shWohin&nbsp;=&nbsp;Sheets("Tabelle2")&nbsp;<FONT COLOR=#008000>'anpassen,&nbsp;wohin&nbsp;soll&nbsp;das&nbsp;ganze</FONT>

was_wird_gesucht&nbsp;=&nbsp;"Hallo"&nbsp;<FONT COLOR=#008000>'anpassen</FONT>
<FONT COLOR=#0000FF>With</FONT>&nbsp;shcom.Columns(searchCol)
&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>Set</FONT>&nbsp;Obgef&nbsp;=&nbsp;.Find(was_wird_gesucht,&nbsp;LookIn:=xlComments,&nbsp;LookAt:=xlPart)
&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>If&nbsp;Not</FONT>&nbsp;Obgef&nbsp;<FONT COLOR=#0000FF>Is&nbsp;Nothing&nbsp;Then</FONT>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;firstAddress&nbsp;=&nbsp;Obgef.Address
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>Do</FONT>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;zeile&nbsp;=&nbsp;zeile&nbsp;+&nbsp;1
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#008000>'hier&nbsp;wird&nbsp;kopiert&nbsp;und&nbsp;zwar&nbsp;ins&nbsp;2&nbsp;Tabellenblatt&nbsp;Ab&nbsp;Zelle&nbsp;A1</FONT>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#008000>'ansonsten&nbsp;bei&nbsp;cells(zeile,1)&nbsp;den&nbsp;1er&nbsp;anpassen</FONT>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Obgef.Copy&nbsp;shWohin.Cells(zeile,&nbsp;1)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>Set</FONT>&nbsp;Obgef&nbsp;=&nbsp;.FindNext(Obgef)
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>Loop&nbsp;While&nbsp;Not</FONT>&nbsp;Obgef&nbsp;<FONT COLOR=#0000FF>Is&nbsp;Nothing&nbsp;And</FONT>&nbsp;Obgef.Address&nbsp;&lt;&gt;&nbsp;firstAddress
&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>End&nbsp;If</FONT>
&nbsp;&nbsp;&nbsp;&nbsp;<FONT COLOR=#0000FF>Set</FONT>&nbsp;Obgef&nbsp;=&nbsp;<FONT COLOR=#0000FF>Nothing</FONT>
<FONT COLOR=#0000FF>End&nbsp;With</FONT>
<FONT COLOR=#0000FF>End&nbsp;Sub</FONT>

<FONT Size=2>
<p>Code eingefügt mit <b><a href="http://rtsoftwaredevelopment.de" target="_blank">Syntaxhighlighter 4.6</a></b></FONT></p>
</Blockquote>
<FONT FACE="Arial,FixedSys"Size=3>

Sebastian Schulz
25.09.2007, 17:56
Hallo,

ist auf die Schnelle entstanden.

<div><link href="http://www.ms-office-forum.net/forum/externals/codeconv.css" rel="stylesheet"><pre><span class="TOKEN">Sub</span> Kommentar()
<span class="TOKEN">Dim</span> k <span class="TOKEN">As</span> Comment
<span class="TOKEN">Dim</span> i <span class="TOKEN">As</span> <span class="TOKEN">Integer</span>
&nbsp;
i = 1
&nbsp;
<span class="TOKEN">For</span> <span class="TOKEN">Each</span> k <span class="TOKEN">In</span> Sheets(&quot;Tabelle1&quot;).Comments
&nbsp;
<span class="TOKEN">If</span> InStr(1, k.Text, &quot;Sebastian&quot;) &lt;&gt; 0 <span class="TOKEN">Then</span>
Sheets(&quot;Tabelle2&quot;).Cells(i, 1).Value = ActiveSheet.Range(k.Parent.Address(False, <span class="TOKEN">False</span>))
i = i + 1
<span class="TOKEN">End</span> <span class="TOKEN">If</span>
<span class="TOKEN">Next</span> k
&nbsp;
<span class="TOKEN">End</span> <span class="TOKEN">Sub</span></pre></div>

Anscheinend habe ich es falsch verstanden. Dachte nur die Inhalte der Zelle sollten kopiert werden

Rainersta
25.09.2007, 18:05
Vielen Dank für eure Antworten,
wie ich lese geht es nur mit irgendwelchem " WirrWarr " oder mit
Visual Basic was nicht meine Welt ist. Nochmals vielen Dank für eure
Antworten.

chris-kaiser
25.09.2007, 18:15
Hi

ist aber nicht schwer

drücke mal in einer Kopie der Mappe
Alt+F11

Menü Einfügen -> Modul

kopiere den Code in dieses Fenster
passe deine Namen (Blattnamen, und Mayer an)
schliese das Fenster

Drücke Alt+F8
wähle das Makro aus und klicke auf ausführen