Um Spalte A zurückzusetzen, habe ich zwischen Codezeile 26 und 27 das hier eingesetzt:
Ich habe diesen Bereich gewählt, damit die Überschrift in A1 nicht auch gelöscht wird.
Funktioniert auch soweit.
Richtig so.
Ich kriege es aber leider nicht hin das gesuchte Wort/ die gesuchten Wörter am Anfang der Tabelle in gleicher Zeile zu kopieren...
Ok, dann ein kleiner Schubs von mir...
Die naheliegende Lösung wäre zwischen Zeile 62 und 63 folgendes einzufügen:
'referenziere eine Zelle in Spalte A, in der selben Zeile wie rngZelle (via rngZelle.Row)
rngZelle.Worksheet.Cells(rngZelle.Row, "A").Value = Text
Das wird dein Problem noch nicht ganz lösen, weil es den Inhalt der Zelle in Spalte A immer wieder überschreibt. Dieses Problem müsstest du also lösen - Tipp: schreib dir dafür eine eigene Funktion ähnlich wie ich es für MarkiereTextInZelle getan habe und kümmere dich darin nur um dieses eine konkrete Problem. Als Ansatz/Ausgangspunkt dient die zuvor genannte Code-Zeile oben.
Grüße
PS: Warum sagte ich "naheliegende Lösung"?
Auch wenn man die gewünschte Aufgabe an der besagten Stelle mit handhaben kann, hat sie dort eigentlich nichts zu suchen, da die Funktion, in der man sich dort befindet, nur zum Markieren gedacht ist. Ein übertragen von Daten bzw. mitschreiben von Daten ist eigentlich eine andere Aufgabe und gehört dort deshalb nicht hinein.
Das ist allerdings ein Software-Architektur-Problem, um das du dir hier keine Gedanken machen solltest. Es hier so zu handhaben ist grundsätzlich erstmal nicht falsch.
Anmerkung: Ich hatte ja zuvor gesagt es gibt mindestens zwei Stellen an denen man ansetzen könnte. Die zweite Stelle (anstatt Zeile 62 und 63) wäre anstatt in MarkiereTextInZelle gewesen. Aber auch da wäre die Aufgabe aus Sicht der Software-Architektur fehl am Platz.
|