Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1060to1064
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
Inhaltsverzeichnis

Formatierung per Makro

Formatierung per Makro
20.03.2009 09:51:45
Bjarne
Moin,
ihch möchte gerne einen Bereich per Makro formatieren lassen.
Die Details:
Am Anfang jeder Zeile stehen in drei Zellen Schwellenwerte. Diese sind unterteilt in gut(grün), mittel(gelb) und schlecht(rot).
In der gleichen Zeile folgen mit etwas abstand die zu prüfenden Werte.
Was soll das Makro machen:
Das Makro soll die Zellwerte am Anfang einlesen und dann die Reihe entland gehen. Erreicht ein Wert einen Schwellenwert wird dieser entsprechen eingefärbt. Nachdem alle Werte der Zeile geprüft wurden soll das Makro zur nächsten Zeile gehen, dort wieder die Schwellenwerte einlesen ........
Ich möchte diese Formatierung nicht über die bedingte Formatierung laufen lassen, sondern über ein Makro.
Ist das Möglich und wenn ja, wo muss ich anfangen? Bin leider noch einsteiger....hätte es mit einer wenn dann funktion veruscht aber dann wird das ganze bei 20 Zeilen elendig lang.....
Freue mich über Lösungvorschläge!

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formatierung per Makro
20.03.2009 10:42:57
fcs
Hallo Bjarne,
im Prinzip kann man das wie folgt machen. Die Bedingungen im If..ElseIf...Else...End If Block muss du ggf anpassen.
Gruß
Franz

Sub SchwellenFormatieren()
Dim wks As Worksheet
Dim lngZeile As Long, lngSpalte As Long
Dim dblSchwelle1 As Double, dblSchwelle2 As Double, dblSchwelle3 As Double
Set wks = ActiveSheet
With wks
For lngZeile = 2 To .Cells(.Rows.Count, 1).End(xlUp).Row
dblSchwelle1 = .Cells(lngZeile, 1).Value 'Schwellenwert 1 aus Spalte 1 (A)
dblSchwelle2 = .Cells(lngZeile, 2).Value 'Schwellenwert 2 aus Spalte 2 (B)
dblSchwelle3 = .Cells(lngZeile, 3).Value 'Schwellenwert 3 aus Spalte 3 (C)
For lngSpalte = 5 To .Cells(lngZeile, .Columns.Count).End(xlToLeft).Column 'rechte Spalte  _
ggf. fest vorgeben
If .Cells(lngZeile, lngSpalte) > 0 And .Cells(lngZeile, lngSpalte)  dblSchwelle1 _
And .Cells(lngZeile, lngSpalte)  dblSchwelle2 _
And .Cells(lngZeile, lngSpalte) 


Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige