Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1464to1468
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

MsgBox erstellen

MsgBox erstellen
06.01.2016 14:41:59
Axel
Hallo,
ich bin auf der Suche nach der Lösung des folgenden Falls:
Ich möchte z.B. die Felder H1 - H8 überwachen.
Das heißt, wenn z.B. in diesen Feldern ein Wert von z.B. 10 überschritten wird, möchte ich, dass eine MsgBox als Warnhinweis erscheint.
Hab schon ein wenig recherchiert und es daraufhin im Makro_Editor ausprobiert, doch nichts funktionierte...
Wäre euch für eine Lösung sehr dankbar.
Beste Grüße
Axel

18
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
Datenüberprüfung
06.01.2016 14:47:46
Matthias
Hallo
Das kannst Du mit einer Gültigkeitregel lösen
Ganze Zahl kleiner/gleich 10
Gruß Matthias

AW: Datenüberprüfung
06.01.2016 15:21:59
Axel
Hallo Matthias,
vielen Dank. Aber siehe Antwort die ich auf Uwe`s Vorschlag gegeben habe.
Gruß Axel

AW: Datenüberprüfung
06.01.2016 15:32:33
Matthias
Hallo
Dann musst Du die Gültigkeit auf die Quellzellen setzen
also auf H1 und H2
Dort dann benutzerdefiniert als Formel: ...
Das die Summe nur kleiner/gleich 10 sein darf.
Gruß Matthias

AW: MsgBox erstellen
06.01.2016 14:48:52
UweD
Hallo
ohne VBA
- Bereich markieren
- Daten
- Datenüberprüfung
- im ersten Reiter: Zulassen z.B. Dezimal, kleiner oder gleich, 10
- Ok
- GGF im letzten Reiter noch die Fehlermeldung anpassen.
LG UweD

Anzeige
AW: MsgBox erstellen
06.01.2016 15:18:41
Axel
Hallo Uwe,
vielen Dank erstmal für deinen Lösungsansatz.
Hab es gerade mal ausprobiert doch es tut sich nichts.
Ist es eine einmalige Überprüfung?
Ich bräuchte den Warnhinweis immer dann wenn ich z.B auf H5 die Summe aus H1 und H2 erfasse und dieser dann z.B. 10 übersteigt. Dann soll direkt während der Eingabe in z.B. Feld H1 der Warnhinweis kommen, wenn durch die Eingabe der Wert auf H5 höher als 10 ist.
Sorry, aber bin echt nen Grünschnabel;)

AW: MsgBox erstellen
06.01.2016 15:36:35
UweD
Hallo
Von Summe war keine Rede..
Egal so gehts..
- ..
- im ersten Reiter: Zulassen Benutzerdefiniert
- Formel: =SUMME($H$1:$H$8)&lt=10
https://www.herber.de/bbs/user/102619.xlsx
Gruß UweD

Anzeige
AW: MsgBox erstellen
06.01.2016 15:52:06
Axel
Ich probiere es mal Anhand dieses Screenshots zu erklären:
Userbild
Wenn sich der Wert in der H Zeile ändert soll während der Eingabe in eines der Felder die den H Wert bestimmt(hier C und D) und dieser den Wert 10 überschreitet, die Box auftauchen. Die Felder auf die sich der jeweilige H Wert bezieht sind aber nicht fest zugeordnet. Ich hoffe du/ihr könnt das Prinzip anhand des Screenshots verstehen. Vielen Dank für eure Mühe.
Axel

kein Bild sondern Musterdatei hochladen
06.01.2016 16:11:08
UweD

AW: kein Bild sondern Musterdatei hochladen
06.01.2016 16:16:17
Axel
https://www.herber.de/bbs/user/102624.xlsm
Hoffe jetzt passt es. Der Grenzwert ist hier nicht 10 sondern 11.
Vielen Dank!

Anzeige
AW: kein Bild sondern Musterdatei hochladen
06.01.2016 17:28:11
UweD
Hier mal mit Makro
- Rechtsclick auf den Tabellenblattreiter
- Code anzeigen
- Macro reinkopieren

Private Sub Worksheet_Change(ByVal Target As Range)
On Error GoTo Fehler
If Not Intersect(Target, Range("C:D")) Is Nothing Then
If Target.Row > 1 Then
For Each Z In Target
If Cells(Z.Row, 8) > Cells(Z.Row, 5) Then
MsgBox ("Wert '" & Z.Value & "' führt zu Fehler")
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
Exit Sub
End If
Next
End If
End If
Err.Clear
Fehler:
EnableEvents = True
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruß UweD

Anzeige
AW: kein Bild sondern Musterdatei hochladen
07.01.2016 11:36:21
Axel
Hallo Uwe, habe dein Makro wie beschrieben eingefügt doch es tut sich nichts.
Ich habe aber auch noch ein wenig weiter recherchiert und bin auf etwas gestoßen was dem Ganzen, meiner Meinung, sehr nahe kommt.
Siehe hier:
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
If Range("h2") > 11 Then
MsgBox ("Wert überschritten")
Exit Sub
End If
End Sub

Es funktioniert jetzt wenn der Wert auf H2 über 11 gerät, poppt das Fenster auf.
Nun bräuchte ich das ganze für die komplette Spalte H, also h2:h366
Hoffe nun ist es nur noch ein kleiner Schritt.
Vielen Dank schon mal.
Beste Grüße
Axel

Anzeige
AW: kein Bild sondern Musterdatei hochladen
07.01.2016 12:00:16
UweD
Hallo
mein Makro prüft, wenn du in einer Zeile in der Spalte C oder D was änderst, ob in der gleichen Zeile in H der Wert kleiner wird als der in der gleichen Zeile in Spalte E (da steht überall 11).
Es erfolgt die MSGBOX und danach wird der eingegebene Wert wieder zurückgesetzt.
(werden mehrere Zellen gleichzeitig verändert, wird das Zellenweise geprüft)
Wenn im aktuellen Zustand alle Eingaben richtig sind, dann kann ja nur durch eine Neueingabe der "Falschzustand" erzeugt werden.
Damit wäre mein Vorgehen richtig.

Die Frage ist jetzt
- Soll immer nur auf 11 geprüft werden oder auf den Wert in E der gleichen Zeile
- Soll immer die ganze Spalte H geprüft werden, auch wenn die aktuelle Änderung nicht der Grund dafür ist?
Gruß UweD

Anzeige
AW: kein Bild sondern Musterdatei hochladen
07.01.2016 12:13:44
Axel
Also, eigentlich soll nur die gesamte Spalte H überprüft werden.
Das heißt, wenn ich jetzt z.B. in Spalte A33 der 01.01.2016 eingetragen wird mit einem Gast der jetzt eine Dauer von 2 Nächten bleibt, und das mit 12 Autos, dann ändert sich der Wert in H2 auf 12(vorher war keine Belegung vorhanden. Nun möchte ich dass das Fenster aufpoppt. Das klappt jetzt auch mit dem Makro welches ich eingefügt habe. Jetzt gebe ich in Spalte A34 wieder einen Gast ein der am 05.01 für eine Nacht mit 12 Autos kommt. Dementsprechend ändert sich der Wert in H6 auf zwölf. Nun soll wieder das Fenster aufpoppen.
Ich hoffe das ist jetzt nicht zu kompliziert formuliert...

Anzeige
AW: kein Bild sondern Musterdatei hochladen
07.01.2016 15:38:55
UweD
Hi
Du hast nur die Hälfte der Fragen beantwortet..
soll auf die Feste Zahl 11 geprüft werden oder auf den Inhalt in Spalte E?
- -
Ich mach es jetzt mal so...
Spalte A wird noch mit in die Überwachung reingenommen.
Alle Zellen in H werden auf Überschreitung des Grenzwertes geprüft.
Im Fehlerfall wird die Eingabe widerrufen (kannst du auch weglassen)

Private Sub Worksheet_Change(ByVal Target As Range)
Dim MMax As Integer
On Error GoTo Fehler
MMax = 11 'Grenzwert
If Not Intersect(Target, Range("A:A,C:D")) Is Nothing Then
If Target.Row > 1 Then
If WorksheetFunction.CountIf(Columns(8), ">" & MMax) > 0 Then
MsgBox ("Wert zu hoch")
'Widerrufen***
With Application
.EnableEvents = False
.Undo
.EnableEvents = True
End With
'Ende Wiederrufen***
Exit Sub
End If
End If
End If
Err.Clear
Fehler:
Application.EnableEvents = True
If Err.Number  0 Then MsgBox "Fehler: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub
Gruß UweD

Anzeige
AW: kein Bild sondern Musterdatei hochladen
07.01.2016 16:11:54
Axel
Hallo Uwe,
TOP, genau so wollte ich es haben. Danke für deine Geduld mit mir;)
Beste Grüße und weiter so!!
Axel

AW: MsgBox erstellen
06.01.2016 16:16:59
selli
hallo axel,
die datenüberprüfung muss für die zellen in den spalten C,D und E erfolgen, da auch hier letztlich die eingabe erfolgt, die zum ergebnis in zelle H1 führt.
also die datengültigkeit für die zellen C1, D1 und E1 lautet benutzerdefiniert H1>9
gruß
selli

nach der musterdatei....
06.01.2016 16:25:44
selli
hallo axel,
...zu folge wird das mit der datenüberprüfung so nicht gehen.
es ist immer wieder erstaunlich, wie man manchen fragestellern alles aus der nase ziehen muss.
erst war nicht einmal von einer summe die rede, dann gab es ein bildchen und jetzt eine summenproduktformel.
klasse.
macht keinen spaß, jedesmal wieder von vorne anzufangen.
gruß
selli

Anzeige
AW: nach der musterdatei....
06.01.2016 16:36:49
Axel
Hallo Selli,
erstmal sorry dafür, dass man mir alles aus der Nase ziehen muss;) Das war nicht mein Plan und den Spaß möchte ich dir auch nicht verderben... Ich versuch es es so gut zu formulieren wie es mir möglich ist. Es wäre super wenn mir das Prinzip jemand step by step erklären kann, denn mit dem was bis jetzt an Lösungsansätzen kam, tue ich mich doch etwas schwer. Bin halt Amateur und die Summenproduktformel wurde mir auch nur gestellt.
Danke für deine Hilfe.
Gruß
Axel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige