AW: Werte aus Hintergrundfarbe auslesen
23.04.2007 22:46:00
fcs
Hallo Ralf,
Gerd's Lösung ist ok
Falls in Spalte A nicht immer Werte stehen ist folgende Lösung etwas robuster. Kannst dich dann ja noch entscheiden, ob du nur die Werte übertragen willst oder kopieren möchtest.
Gruß
Franz
Sub GelbeNachSpalte()
'Überträgt Werte aus Zellen mit Farbe in Quellspalte in die Zielspalte
Dim wks As Worksheet, wks2 As Worksheet, SpalteQ As Integer
Dim Farbe As Integer, Zeile1 As Long, Zeile2 As Long, ZeileZiel As Long
Set wks = Worksheets("Tabelle1")
Set wks2 = Worksheets("Tabelle2")
Farbe = 6 'gelb - Hintergrundfarbe der gesuchten Zellen
Zeile1 = 1
Zeile2 = 500
SpalteQ = 1 'Spalte A - zu durchsuchende Spalte
ZeileZiel = 2 '1. Zeile für Daten in Zieltabelle
'oder auch wie in nächster Zeile nächste freie Zeile in Zieltabelle Spalte A
' ZeileZiel = wks2.Cells(wks2.Rows.Count, 1).End(xlUp).Row + 1
For Zeile1 = Zeile1 To Zeile2
If wks.Cells(Zeile1, SpalteQ).Interior.ColorIndex = Farbe Then
'Nur Werte von Tabelle 1 nach Tabelle 2 übertragen
wks2.Cells(ZeileZiel, SpalteZiel).Range("A1:K1").Value = _
wks.Cells(Zeile1, 1).Range("A1:K1").Value
' oder Zellen komplett (Formeln, Werte + Formate) von Tabelle 1 nach Tabelle 2 _
kopieren
wks.Cells(Zeile1, 1).Range("A1:K1").Copy _
Destination:=wks2.Cells(ZeileZiel, 1).Range("A1:K1")
ZeileZiel = ZeileZiel + 1
End If
Next Zeile1
End Sub