Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
648to652
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
648to652
648to652
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zellformatierung mit makro

zellformatierung mit makro
08.08.2005 08:32:55
andi
Hi,
habe folgenden Code:

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo err_handler
'Werte berechnen und an Variablen übergeben
wert = Cells(6, 4).Value
minTol = wert + Cells(8, Target.Column).Value
maxTol = wert + Cells(7, Target.Column).Value
orange_max = Cells(7, Target.Column).Value * 20 / 100 * -1
orange_min = Cells(8, Target.Column).Value * 20 / 100 * -1
m = maxTol - orange_max
n = minTol + orange_min
Select Case Target.Value
Case Is > maxTol
Target.Font.ColorIndex = 3 'rot
Case Is < minTol
Target.Font.ColorIndex = 3
Case Is < maxTol, Is > m
Target.Font.ColorIndex = 46 'orange
Case Is > minTol, Is < n
Target.Font.ColorIndex = 46
Case Else
Target.Font.ColorIndex = 10 'grün
End Select
err_handler:
'MsgBox "Fehler!"
Exit Sub
End Sub

Er sollte eigentlich 3 Foramtierungen machen. Leider tut er dies nicht. Ausserhalb der max und minToleranz soll er rot färben --> das funktioniert. Dann gibt es einen Bereich der orange sein soll (+- 20% von unterer bzw. obere Toleranz).
Der mittlere Bereich soll grün sein --> läuft nicht!
Wieso geht das nicht?
Gruß Andi

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zellformatierung mit makro
08.08.2005 09:53:58
MichaV
Hallo,
ohne Deine Ausgangswerte ist das schwierig. Guck mal im Debug- Modus, wie Deine Werte aussehen. Ich denke mal, da passt was nicht mit Deinen Abfragen.
Setz mal bei Private Sub Worksheet_Change(ByVal Target As Range) mit F9 einen Haltepunkt, trage vorne einen Wert ein und gehe dann das Makro Schritt für Schritt mit F8 durch. Wenn Du mit der Maus auf eine Variable zeigst, wird deren aktueller Wert angezeigt. So kannst Du schnell überprüfen, ob das Makro überhaupt so rechnet, wie Du es wolltest.
Wenn das nicht klappt, gibt mal 1,2 Beispielwerte.
Gruss- Micha
PS: Rückmeldung wäre nett.
Anzeige
AW: zellformatierung mit makro
08.08.2005 10:26:25
andi
Hi,
danke, dass du mir helfen willst. Bsp. für Werte:
wert = Cells(6, 4).Value --&gt 61,5
minTol = wert + Cells(8, 4).Value --&gt 61,3 = 61,5 +- 0,2
maxTol = wert + Cells(7, 4).Value --&gt 61,4 = 61,5 +- 0,1
orange_max = Cells(7, 4).Value * 20 / 100 * -1 --&gt 0,02 = 0,1 *20 /100 *-1
orange_min = Cells(8, 4).Value * 20 / 100 * -1 --&gt 0,04 = 0,2 *20 /100 *-1
m = maxTol - orange_max --&gt 61,38 = 61,4 - 0,02
n = minTol + orange_min --&gt 61,34 = 61,3 + 0,04
Mit --&gt habe ich die Berechnungen gekennzeichnet. Sie stimmen so weit (meiner Meinung nach). Jetzt möchte ich:
Bereich außerhalb von (maxTol und minTol) rot: Also außerhalb von 61,4 und 61,3
Bereich innerhalb von 61,4 bis 61,38 orange (=20%) und den Bereich von 61,30 bis 61,34 orange.
Der Bereich von 61,34 bis 61,38 soll grün sein.
Ich glaube, dass der Fehler bei den select case- Anweisungen liegt.
Wäre toll, wenn du mir helfen könntest.
Gruß Andi
Anzeige
AW: zellformatierung mit makro
08.08.2005 10:46:20
MichaV
Hallo Andi,
wenn Du
Case Is m
dann ist das wie eine Oder- Anweisung. Du sagst also, wenn Wert m, und damit stimmt Deine Abfrage nicht mehr, denn Du willst ja eine UND- Verknüpfung.
Richtig ist
Case m To maxTol:
Case MinTol To n:
Gruss- Micha
PS: Rückmeldung wäre nett.
AW: zellformatierung mit makro
08.08.2005 10:56:39
andi
Danke.
Bitte, Danke für Rückmeldung.
08.08.2005 11:46:17
MichaV

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige