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

Macro bei Eingabe ausführen

Macro bei Eingabe ausführen
29.06.2017 15:45:38
Georg
Hallo liebe Excel Freunde
ich brauche Unterstützung :
1. Ich möchte, dass das Makro bei der Eingabe von Werten in K18 oder K19 die Zellen überprüft?
2. Falls die msgbox ausgegeben wird, soll k18 und k19 auf 0 gesetzt werden.
3. Es wären allerdings noch weitere Zellen zu berücksichtigen. z. B. M18,19,P18,19 etc.
Vielen Dank.

Sub Eingabe()
Dim hinweis As String
Dim x1 As Long
Dim x2 As Long
hinweis = "Eingabe überprüfen! Eine Bewertung kann nur für 4.2.9 ODER für 4.2.10 eingegeben  _
werden!"
x1 = Range("k18")
x2 = Range("k19")
If x2 > 0 And x1 > 0 Then
MsgBox hinweis, vbOKOnly
End If
End Sub

Anschluss

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

Betreff
Datum
Anwender
Anzeige
AW: Macro bei Eingabe ausführen
30.06.2017 10:00:11
Werner
Hallo Georg,
wenn ich dich richtig verstanden habe, dann willst du verhindern, dass andere Werte als 4.2.9 bzw. 4.2.10 eingegeben werden.
Dann wäre das doch mit einer Gültigkeitsprüfung mit einem entsprechenden Meldungstext möglich.
Gruß Werner
AW: Macro bei Eingabe ausführen
30.06.2017 11:27:49
Georg
hallo*
ich habe mich nicht richtig ausgedrückt.
In k18 kann ein Wert eingetragen werden (1 bis 10), wenn da einer drin steht, soll beim Versuch in K19 einen Wert einzutragen eine Fehlermeldung kommen und umgekehrt.
Diese Bedingung soll für weitere Felder gelten, immer in der dieser Kombination: wenn in M18 ein Wert drin steht, darf in M19 nix eingetragen werden etc.
danke G
Anzeige
AW: Macro bei Eingabe ausführen
01.07.2017 21:18:18
Werner
Hallo Georg,
ich hab mal was gebastelt. Der Code regiert auf Eingaben in K18/K19, M18/M19 und P18/P19. Weitere Spalten müssten dann noch ergänzt werden.
Folgende Prüfungen mit entsprechenden Meldungen:
-nur Zahlen
-nur Zahlen von 1 bis 10
-Prüfung ob Zelle über/unter der Eingabezelle leer
-keine Mehrfachauswahl zulässig
Dieser Code gehört ins CodeModul des Arbeitsblattes in dem die Eingaben erfolgen.
Rechtsklick auf den Tabellenblattreiter - Code anzeigen - Code rechts ins Codefenster kopieren
Option Explicit
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strZelle As String
Select Case Target.Column
Case 11, 13, 16 'hier weitere Spalten eintragen
Select Case Target.Row
Case 18 'Zeile 18
If Target.Count > 1 Then
Call Mehrfach
Exit Sub
End If
If Not Target Is Nothing Then
If Target.Value  "" Then
If Target.Offset(1, 0) = "" Then
If Not IsNumeric(Target.Value) Then
Call NurZahl
Exit Sub
ElseIf Target.Value  10 Then
Call EinsBisZehn
Exit Sub
End If
Else
strZelle = Target.Offset(1, 0).Address(0, 0)
Call NichtLeer(strZelle)
Exit Sub
End If
End If
End If
Case 19 'Zeile 19
If Not Target Is Nothing Then
If Target.Value  "" Then
If Target.Offset(-1, 0) = "" Then
If Not IsNumeric(Target.Value) Then
Call NurZahl
Exit Sub
ElseIf Target.Value  10 Then
Call EinsBisZehn
Exit Sub
End If
Else
strZelle = Target.Offset(-1, 0).Address(0, 0)
Call NichtLeer(strZelle)
Exit Sub
End If
End If
End If
Case Else
End Select
Case Else
End Select
End Sub
Dieser Code gehört komplett in ein allgemeines Modul.
Option Explicit
Public Sub Mehrfach()
MsgBox "Mehrachauswahl nicht zulässig!" _
, , "Hinweis für " & Application.UserName
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End Sub
Public Sub NurZahl()
MsgBox "Es ist nur die Eingabe von Zahlen zulässig!" _
, , "Hinweis für " & Application.UserName
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End Sub
Public Sub EinsBisZehn()
MsgBox "Es sind nur Zahlenwerte von 1 bis 10 zulässig!" _
, , "Hinweis für " & Application.UserName
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End Sub
Public Sub NichtLeer(strZelle As String)
MsgBox "Nicht zulässig,  da die Zelle  " & strZelle & "  ist nicht leer ist!" _
, , "Hinweis für " & Application.UserName
Application.EnableEvents = False
Application.Undo
Application.EnableEvents = True
End Sub
Gruß Werner
Anzeige
AW: Macro bei Eingabe ausführen
03.07.2017 10:55:28
Georg
Hallo Werner, wie immer genial.
Wegen meiner geringen Kenntnisse dennke ich immer, das ist sicher mit ein paar zeilen zu lösen, aber stellt sich dann als umfangreicher heraus. VIELEN DANK GEORG!
Gerne u. Danke für die Rückmeldung. o.w.T.
03.07.2017 13:52:25
Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige