eine Frage:
wie kann ich ich im Tabellenblatt ("HB") ein automatische Makro einstellen, dass eine Msg Box aufruft, sobald der Wert größer 0 ist
und zwar für Spalte H; Zelle 41,43,44,47,48,49,51,52,53,54
Danke im Voraus.
Berndt
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Range("H41") > 0 Then
MsgBox ("Wert überschritten")
Exit Sub
End If
End Sub
mfg Bernd
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Range("H41").Value > 0 Or Range("H43").Value > 0 Or Range("H44").Value > 0 Or _
Range("H47").Value > 0 Or Range("H48").Value > 0 Or Range("H49").Value > 0 Or _
Range("H51").Value > 0 Or Range("H52").Value > 0 Or Range("H53").Value > 0 Or _
Range("H54").Value > 0 Then
MsgBox ("Wert überschritten")
End If
End Sub
Grüße
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Worksheets("HB").Range("H41").Value > 0 Then
MsgBox ("Wert überschritten")
Exit Sub
End If
End Sub
lg Bernd
https://www.herber.de/bbs/user/106677.xlsm
Um eine MsgBox in Excel anzuzeigen, wenn der Wert in bestimmten Zellen größer 0 ist, kannst Du den folgenden VBA-Code verwenden. Dieser Code wird in das entsprechende Arbeitsblatt eingefügt, in diesem Fall das Arbeitsblatt "A", wo die Eingaben gemacht werden.
Öffne Excel und drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
Wähle das Arbeitsblatt „A“ in der Projektansicht aus.
Füge den folgenden Code ein:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Worksheets("HB").Range("H41").Value > 0 Then
MsgBox ("Wert überschritten")
End If
End Sub
Schließe den VBA-Editor und teste die Funktion, indem Du einen Wert in Zelle „S2“ des Arbeitsblatts „A“ eingibst.
Problem: MsgBox erscheint nicht, wenn der Wert durch eine Formel (z.B. SVerweis) übernommen wird.
Problem: Mehrere MsgBoxen erscheinen gleichzeitig.
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rng As Range
Set rng = Worksheets("HB").Range("H41:H54")
If Application.WorksheetFunction.CountIf(rng, ">0") > 0 Then
MsgBox ("Wert überschritten")
End If
End Sub
Wenn-Dann-Formel: Du kannst eine einfache Formel in einer anderen Zelle verwenden, um zu überprüfen, ob der Wert größer als 0 ist:
=WENN(H41>0; "Wert überschritten"; "")
BedConditional Formatting: Du kannst auch die bedingte Formatierung nutzen, um Zellen hervorzuheben, die einen Wert größer 0 haben.
Hier sind einige Beispiele, wie Du den VBA-Code erweitern kannst, um mehrere Zellen zu überwachen:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim rng As Range
Set rng = Worksheets("HB").Range("H41,H43,H44,H47,H48,H49,H51,H52,H53,H54")
Dim cell As Range
For Each cell In rng
If cell.Value > 0 Then
MsgBox ("Wert in " & cell.Address & " überschritten")
Exit For
End If
Next cell
End Sub
In diesem Beispiel wird eine MsgBox angezeigt, die die genaue Zelle angibt, die den Wert überschreitet.
1. Frage
Wie kann ich die MsgBox anpassen, um spezifische Informationen anzuzeigen?
Antwort: Du kannst den Text in der MsgBox ändern, um spezifische Informationen anzuzeigen, z.B. durch die Verwendung von Variablen, die die Zelladresse oder den Wert enthalten.
2. Frage
Was ist der Unterschied zwischen einer MsgBox und einer Zellenanzeige?
Antwort: Eine MsgBox ist ein Popup-Fenster, das eine sofortige Benachrichtigung bietet, während eine Zelle direkt auf dem Arbeitsblatt bleibt und die Informationen dort anzeigt.
Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden
Suche nach den besten AntwortenEntdecke unsere meistgeklickten Beiträge in der Google Suche
Top 100 Threads jetzt ansehen