bei Eingabe Schriftfarbe ändern
#1
Hallo an die Gemeinde

besteht die Möglichkeit die Schriftfarbe zu ändern in diesem Makro sobald eine Eingabe in B3 gemacht wird ?

Private Sub Worksheet_Change(ByVal Target As Range)

        If Not Intersect(Target, Range("B3")) Is Nothing Then
       
            If Target = "" Then
            Target = "?"
            Target.Font.Color = RGB(0, 176, 80)
            Target.Font.Size = 20
                   
        End If

        Cancel = True
   
    End If

die Farbe soll schwarz sein und auch Schriftgröße 20


Danke Euch schon jetzt für die Hilfe !!!
   
End Sub
Antworten Top
#2
Hallo,

das schein mir ein ausgemachter Blödsinn zu sein. Intersect für eine einzige Zelle, da gibt es einfachere und kürzere Möglichkeiten. Wie willst du eine Eingabe ohne Inhalt machen, damit dein Makro startet?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#3
also das Makro startet beim öffnen und zeigt mir auch ein farbiges Fragezeichen an in B3.

nach Eingabe einer Zahl sollte B3 schwarz werden.

das war Mein Lösungsziel
Antworten Top
#4
Dafür gibt es doch die bedingte Formatierung, ein Makro ist unnötig.
Schöne Grüße
Berni
Antworten Top
#5
habe es jetzt über die bedingte Formatierung hinbekommen. Danke

und geht es auch über diese Formatierung in einer Zelle denn Wert zu ändern der angezeigt wird wenn der Zellinhalt -30000 übersteigt ?

das wäre super.
Antworten Top
#6
Zellinhalte können mit der bedingten Formatierung nicht geändert werden, sondern nur Formate, wie schon der Name impliziert.
Dafür brauchst du VBA.
Schöne Grüße
Berni
Antworten Top
#7
Moin großer Affe Wink

den folgenden Code fügst in die Tabelle ein, in der Du das Limit abfragst. iZeile, iSpalte (im Beispiel A1) und iLimit passt Du für das Arbeitsblatt an.

Code:
Option Explicit

Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Dim iSpalte As Integer, iZeile As Integer, iLimit As Integer

iSpalte = 1
iZeile = 1
iLimit = -30000

If Cells(iZeile, iSpalte).Value < iLimit Then
    Cells(iZeile, iSpalte).Value = "Kreditlimit überschritten!"
End If

End Sub
Gute Geschäfte!

d`r Bastler von den VBAsteleien.de
Win 10 & 11, Office 2019 & 2021 & macOS X.15, XL 2019
Antworten Top
#8
(12.06.2022, 16:03)MisterBurns schrieb: Zellinhalte können mit der bedingten Formatierung nicht geändert werden, sondern nur Formate, wie schon der Name impliziert.

Das ist natürlich völlig korrekt!
Aber:
Zitat:und geht es auch über diese Formatierung in einer Zelle denn Wert zu ändern der angezeigt wird wenn der Zellinhalt -30000 übersteigt

Anzeige und Wert sind zwei verschiedene Sachen!
Ich kann mir durchaus ein rotes Fragezeichen ? anzeigen lassen, wenn bspw. beliebiger Text in einer Zelle steht.
Alle Zahlen >-30000 werden mit einem grünen 1111 angezeigt.
Kleinere Zahlen erhalten den Zyan-Text zu klein!
Das alles mit dem benutzerdefinierten Zahlenformat
[Grün][>-30000]1111;[Zyan]"zu klein!";;[Rot]\?

A
1?
21111
3zu klein!

ZelleFormatWert
A1[Grün][>-30000]1111;[Zyan]"zu klein!";;[Rot]\?Rhabarber
A2[Grün][>-30000]1111;[Zyan]"zu klein!";;[Rot]\?15
A3[Grün][>-30000]1111;[Zyan]"zu klein!";;[Rot]\?-32000

Da die Farbe nicht vom Tool angezeigt wird, hier der entsprechende Screenshot:
   

Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#9
Ha, da hat der Ralf wieder klug geschi... 21 
Stimmt natürlich, birgt aber die Gefahr, dass mit dem eingegebenen Wert eine weitere Berechnung erfolgen könnte. Sprich, der Benutzer erhält zwar ein rotes Fragezeichen, wäre aber nicht gezwungen, den Wert zu ändern.
Schöne Grüße
Berni
Antworten Top
#10
Der Klugscheißer 19 wollte halt nur mal allgemein auf die mannigfaltigen Möglichkeiten des Zahlenformats hinweisen.
Über den Sinn (besser Unsinn) brauchen wir sicherlich nicht diskutieren.

Manchmal aber auch ganz nett,
z.B. positive Zahlen mit Alt+24, negative mit Alt+25 darzustellen, wobei dennoch normal gerechnet werden kann:
[Grün]↑;[Rot]↓;;
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 2 Gast/Gäste