Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
668to672
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
668to672
668to672
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

erste gelbe bis letzte gelbe Zelle markieren

erste gelbe bis letzte gelbe Zelle markieren
24.09.2005 11:59:01
M.
Suche ein Befehl der die erste bis letzte Zelle mit gelber Füllfarbe markiert.
Vielen Dank im voraus
Karsten

17
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
24.09.2005 13:07:38
Ralf
Hallo Karsten,
dazu brauchst Du keinen Befehl. Drücke Strg + Pos1, damit gelangst Du zur 1. Zelle. Dann Strg + Shift + Ende. Damit markierst Du den gesamten benutzten Bereich. Danach im Menü Format - Zellen..., Register Muster gelb auswählen. OK.
Ciao, Ralf
AW: erste gelbe bis letzte gelbe Zelle markieren
24.09.2005 23:58:55
M.
Hi, Ralf,
Ich danke dir, es ist aber nicht das, was ich meine. Z.B. ist von A5 bis C7 alles gelb. Nun soll ein Makro aber dieses erkennen und diesen Bereich markieren, so dass er im nächsten Schritt kopiert und wieder woanders eingefügt wird. Haste da ‚ne Ahnung, wie so was makrobefehlsmäßig aussehen könnte?
Meine Excelversion ist übrigens 2002.
danke dir vielmals
Karsten
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
24.09.2005 23:59:00
M.
Hi, Ralf,
Ich danke dir, es ist aber nicht das, was ich meine. Z.B. ist von A5 bis C7 alles gelb. Nun soll ein Makro aber dieses erkennen und diesen Bereich markieren, so dass er im nächsten Schritt kopiert und wieder woanders eingefügt wird. Haste da ‚ne Ahnung, wie so was makrobefehlsmäßig aussehen könnte?
Meine Excelversion ist übrigens 2002.
danke dir vielmals
Karsten
AW: erste gelbe bis letzte gelbe Zelle markieren
24.09.2005 23:59:07
M.
Hi, Ralf,
Ich danke dir, es ist aber nicht das, was ich meine. Z.B. ist von A5 bis C7 alles gelb. Nun soll ein Makro aber dieses erkennen und diesen Bereich markieren, so dass er im nächsten Schritt kopiert und wieder woanders eingefügt wird. Haste da ‚ne Ahnung, wie so was makrobefehlsmäßig aussehen könnte?
Meine Excelversion ist übrigens 2002.
danke dir vielmals
Karsten
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
25.09.2005 11:20:44
Ralf
Hallo Karsten,
weil man nie sicher sein kann welcher User welchen Farbindex mit welcher Farbe belegt hat, muss erst einmal gecheckt werden welche Farbe denn tatsächlich gemeint ist. Ich hab Dir unter https://www.herber.de/bbs/user/26899.xls mal ein Beispiel gepostet. Klick auf eine beliebige Zelle mit der Farbe Deiner Wahl, dann Klick auf den Button und alle Zellen mit dieser Farbe werden markiert. Den Rest schaffts Du bestimmt allein.
Ciao, Ralf
AW: erste gelbe bis letzte gelbe Zelle markieren
25.09.2005 16:01:27
M.
Hallo, Ralf,
Ich danke dir. Vom Grundprinzip her ist es schon fast dass, was ich brauche.
Wenn ich dich doch noch mal nerven kann, weil, als Amateur krieg ich’s nicht zusammen.
Das ganze soll als ein Makro ablaufen z.B. als Sub Makro1 (wenn’s ums kopieren geht, schaffe ich’s selbst noch). Es geht eigentlich nur darum, alles, was Colorindex 36 hat, zu markieren, und zwar, ohne, dass sich eine MsgBox öffnet und mich nach der Farbe fragt. Möglicherweise sieht der ganze Befehl einfacher aus als jetzt, aber wie gesagt, ich bin auf diesem Gebiet leider nicht ganz so beschlagen.
Kannste mir noch mal helfen?
Danke von Karsten
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
25.09.2005 17:18:22
Ralf
Hi Karsten,
Im Menü Einfügen des VBA Editors ein neues Modul einfügen. Dort diesen Code einfügen:

Private Sub Farbindex36_finden()
Dim Lz$, Zelle, sBereich$
On Error GoTo Fehler:
Lz = ActiveSheet.UsedRange.SpecialCells(xlCellTypeLastCell).Address
For Each Zelle In Range("A1:" & Lz)
If Zelle.Interior.ColorIndex = 36 Then sBereich = sBereich & Zelle.Address & ", "
Next
sBereich = VBA.Left(sBereich, VBA.Len(sBereich) - 2)
Range(sBereich).Select
'ab hier Dein Code für das was Du weiter vor hast...
Exit Sub
Fehler:
MsgBox "Colorindex 36 nicht gefunden"
End Sub

Jetzt kannst Du es als Makro aufrufen.
Ciao, Ralf
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
25.09.2005 18:02:43
M.
Hallo Ralf,
es klappt leider nur bedingt. Wenn ich eine neue Seite öffne und etwas gelb fülle wird es markiert. Wenn es um meine spezielle Seite geht, geht die MsgBox auf (nicht gefunden).
Kann ich dir mal diese Datei zuposten?
Kannst du es mal bei dir probieren?
Wie kann ich dir denn hier die Datei überhaupt zusenden?
Danke Dir
Karsten
AW: erste gelbe bis letzte gelbe Zelle markieren
25.09.2005 22:45:48
Ralf
Hallo Karsten,
im selben Workbook? Und Du hast die entsprechende Tabelle auch aktiviert? Ansonsten musst Du dem Code explicit den Tabellennamen angeben. Bsp.:
For Each Zelle In Sheets("Tabelle1").Range(...usw...)
Ist es auch das gleiche Gelb mit dem Index 36? Und Du hast den Code auch in ein Standardmodul gesetzt? Überprüfe das bitte!
Setze mal mit F9 einen Haltepunkt in die If-Anweisung der Forschleife und sie Dir dann mal an welcher Colorindex angegeben wird (weiter dann mit F5).
Ich schicke Dir mal meine Beispieltabelle. Allerdings ist mein Colorindex für Gelb = 6. Keine Ahnung wie sich das bei Dir auswirkt. Ob Dein oder mein Index genommen wird. Notfalls ändern.
https://www.herber.de/bbs/user/26903.xls
Ciao, Ralf
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 00:13:02
M.
Hallo Ralf
Hab noch mal überprüft, was du gesagt hast und hab einfach noch mal etwas probiert und herausgekriegt, dass es nur funktioniert, wenn der befüllte Bereich eine bestimmte Menge nicht übersteigt. So um die 40 Zellen. Wenn es mehr werden, zeigt er einfach die Fehlmeldung an. In dieser Tabelle gibt es z.B. ein paar Zellen Rot( Füllindex 3). Da klappt es. Mache ich die meisten gelben Zellen in eine andere Farbe klappt es auch.
Hab mir die Sache auch mal mit F8 angeguckt. Kann es sein, dass die Schleife zu wenig ausgeführt wird?
Habe auch schon den Bereich eingeschränkt (For Each Zelle In Range("A1:G20"). Hat aber auch nicht geholfen.
Na, wenn du noch irgend einen Tip hättest würde ich mich freuen.
Danke dir
Karsten
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 10:41:25
M.
Hallo Ralf,
mir hat jemand versucht mit diesem Befehl weiterzuhelfen:

Sub Makro1()
Dim I As Long
For I = 65536 To 1 Step -1
If Cells(I, 1).Interior.ColorIndex = 36 Then
Range("a3:c" & I).Copy Destination:=Sheets("Tabelle1").Range("a1")
Exit For
End If
Next I
End Sub

Es geht auch ohne zu markieren. Bloß, wie schreibt man ihn so um, dass er von der ersten bis zur letzten Zelle alles kopiert und nicht alles über der Letzten. Muss bei Range („a3 was anderes hin?
Ansonsten funktioniert es schon.
Wenn du mir noch mal helfen könntest, falls deine Variante nicht klappt.

Vielen Dank
Gruß Karsten
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 12:33:48
Ralf
Hallo Karsten,
keine Ahnung warum es bei Dir nicht klappt. Bei mir funktioniert alles bestens. Hab es nochmal getestet, ohne Beanstandung. Über alle Zeilen und Spalten des benutzten Bereiches. Ausser, wie gesagt, bei mir hat Gelb den Index 6 statt 36. (Deshalb finde ich die Lösung mit dem Index etwas unglücklich und würde die 1. Variante weiterhin bevorzugen).
Im Deinem Beispiel oben wird nur Spalte A durchsucht und von A3 bis C? kopiert. Willst Du das?
Ciao, Ralf
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 12:56:13
M.
Hallo Ralf,
hab es eben mehrere Male versucht. Immer wenn es zuviel Gelbe Zellen werden kommt die MsgBox. Übrigens, der Colorindex ist nicht das Problem. Bei mir ist es "Hellgelb"(die 36). Das kann ich aber schon selbst ändern.
Zum anderen Beispiel.
Das nur A durchsucht wird reicht, weil A immer Gelb ist. Bis C reicht auch. Das kann ich nach bedarf auch noch mal ändern. Bloß, die oberste Zelle ist nicht immer A3, weil A3 auch eine andere Farbe haben kann. Die oberste Zelle sollte eigentlich die oberste gelbe Zelle sein. Die ganze Zeile ist immer gelb. Einzelne gelbe Zellen irgendwo giebt es nicht.
Vieleicht kannst du mit meiner Beschreibung was anfangen.
Danke von Karsten

Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 14:42:38
Ralf
Hi Karsten,
Du hattest Recht, bis zu 53 Zellen ist alles ok, dann streikt er. Hier eine Lösung die auch darüberhinaus funktioniert. Nur die Tabellennamen musst Du Dir anpassen.

Private Sub Farbindex36_finden()
Dim Lz$, dblC#, Zelle, x#
On Error GoTo Fehler:
x = 1
'Tabelle1 ist die Quelltabelle
Lz = Sheets("Tabelle1").UsedRange.SpecialCells(xlCellTypeLastCell).Row dblC = 36
Sheets("Tabelle2").Activate 'Tabelle2 ist die Zieltabelle
For Each Zelle In Sheets("Tabelle1").Range("A1:A" & Lz)
If Zelle.Interior.ColorIndex = dblC Then
Sheets("Tabelle1").Range(Zelle.Row & ":" & Zelle.Row).Copy
Range("A" & x).Select
ActiveSheet.Paste
x = x + 1
Application.CutCopyMode = False
End If
Next
Exit Sub
Fehler:
MsgBox "Colorindex 36 nicht gefunden"
End Sub

Ciao, Ralf
Anzeige
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 22:03:09
M.
Hallo Ralf,
Danke für deine Mühe. Aber folgende Zeile ist bei mir rot und wird, wenn ich starte, als Syntaxfehler angezeigt:
Lz = Sheets("Tabelle1").UsedRange.SpecialCells(xlCellTypeLastCell).Row dblC = 36
Ich weiß wiedermal nicht, was ich da ändern sollte.
beste Grüße von
Karsten
AW: erste gelbe bis letzte gelbe Zelle markieren
26.09.2005 22:49:25
Ralf
Hi Karsten,
uuups... irgendwie 'ne Zeile abgeschnippelt...:-)
Das 'dblC = 36' gehört in eine separate Zeile. Also einfach nur einen Zeilenumbruch davor setzen.
Ciao, Ralf
AW: erste gelbe bis letzte gelbe Zelle markieren
27.09.2005 10:51:02
M.
Hallo Ralf,
Vielen Dank. Es läuft alles super. Ich brauch trotzdem noch etwas:
Finde letzte Zelle mit Inhalt und lösche alle darunter liegenden Zeilen.
Wenn das noch geht, danke dir
Karsten

300 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige