PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Word / Excel Tabellehintergrundfarbe



Peter
12.07.2003, 09:30
Gibt es in Word oder Excel eine Möglichkeit, welche mir die einzelnen Zeilenhintergründe einer Tabelle abwechselnd mit zwei verschiedenen Farben füllt, so wie in diesem Beispiel (http://www.computerbase.de/artikel/hardware/grafikkarten/nvidia_geforce_fx5900_ultra/2/#technische_daten).
Bei rund 300 Zeilen kommt die manuelle Methode einfach nicht mehr in Frage ;)

Toengel
12.07.2003, 09:50
Tachchen,

spontag faellt mir da nur ein Makro mit VBA ein... eine direkte Moeglichkeit gibt glaub ich net...

Toengel@Alex

Peter
12.07.2003, 10:28
Original erstellt von Toengel
spontag faellt mir da nur ein Makro mit VBA ein... eine direkte Moeglichkeit gibt glaub ich net...Daran habe ich auch schon gedacht, aber ich kenne mich mit VBA überhaupt nicht aus :(

werkam
12.07.2003, 12:18
Ohne VBA geht es auch, wenn auch etwas unprofessionell. Markiere die erste Zeile, formatiere sie und geh auf Muster und wähle eine Farbe aus. Dann die 2.te Zeile und mache das selbe in einer anderen Farbe. Dann markiere beide Zeilen und ziehe den Bereich bis zur Zeile die Du formatiert haben willst, also bis Zeile 300. Danach kannst Du die Daten eingeben.

Peter
12.07.2003, 23:01
Die naheliegendenden Lösungen sind oft die, auf die man zu allerletzt oder eben gar nicht kommt ...
Danke Dir, Alter Meckermann ;)

Toengel
13.07.2003, 12:32
Tachchen,

und hier als VBA (du markierst vorher mit der Maus deinen Bereich und startest dann das Makro mit dem hier aufgelisteten Inhalt; die gewuenschten Farben musst du im Quelltext als RGB-Werte angeben):



Sub ZELLENEINFAERBUNG()
'Aufruf der Routine zur Rueckgabe des markierten Bereiches
Call BEREICH(row_start, row_end, collumn_start, collumn_end)
'Definition der Farbnamen der einzelnen Zeilen
farbe1 = RGB(0, 0, 255)
farbe2 = RGB(255, 0, 0)
'Einfaerbung beginnen
For i = row_start To row_end 'fuer jede Zeile
If i Mod 2 = 0 Then farbtemp = farbe1 Else farbtemp = farbe2 'Farbe wechseln
For j = collumn_start To collumn_end 'fuer jede Zelle in Zeile i
Cells(i, j).Interior.Color = farbtemp 'Zelle einfaerben
Next j
Next i
End Sub

Sub BEREICH(rs, re, cs, ce) 'Routine gibt markierten Bereich zurück
Dim r As Range 'Definition von r als Range
found = Selection.Address 'Zuweisung des markierten Bereichs zu found
Set r = Range(found) 'Objektverweis
'Zuweisung von Eigenschaften auf Variablen:
rs = r.row
cs = r.Column
re = r.Rows.Count + rs - 1
ce = r.Columns.Count + cs - 1
End Sub


Einfach Anhang in *.bas" umbennen und importieren...

Toengel@Alex

Peter
14.07.2003, 13:21
Aha, ein VB(A)-Spezialist.

So ist das natürlich noch komfortabler. Einfach in ein Verzeichnis kopieren und bunt machen - Super :jumpin Danke dir für die Arbeit.