Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1728to1732
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

Excel vba Change-Ereignis für bestimmten bereich

Excel vba Change-Ereignis für bestimmten bereich
09.12.2019 16:00:03
Dominik
Hallo,
ich habe den folgenden Change-Ereignis-Code der zwar funktioniert aber nicht so wie ich mir das wünsche. Der Code soll folgendes machen: Wenn in dem Zellbereich B1:B3 der text "fet" vorkommt und gleichzeitig in dem Bereich A1:A3 die Zahl kleiner 590 ist, soll er eine msg box öffnen mit zahl muss größer 590 sein. Jetzt führt es das Makro aber aus sobald z.B. in B1 fet steht und in a2 eine Zahl kleiner 590 steht. Es soll aber erst ausgeführt werden wenn in a2 eine Zahl kleiner 590 und in b2 fet steht. Und das soll dann auch für a1 und b1 sowie für a3 und b3 gelten. Dann soll der Nutzer einen Hinweis bekommen.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:A3")) Is Nothing Then
If Worksheets("tabelle4").Range("a1").Value  0 Then
MsgBox ("Zahlu muss größer 590 sein!")
End If
End If
End Sub
gruß dominik

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel vba Change-Ereignis für bestimmten bereich
09.12.2019 16:25:20
volti
Hallo Dominik,
meintest Du so etwas?
Option COMPARE TEXT
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Application.Intersect(Target, Range("A1:A3")) Is Nothing Then
  If Cells(Target.Row, "B").Value Like "*fet*" And Target.Value <= 590 Then
    MsgBox ("Zahl muss größer 590 sein!")
  End If
End If
End Sub

viele Grüße
Karl-Heinz

Anzeige
AW: Excel vba Change-Ereignis für bestimmten bereich
09.12.2019 16:35:44
UweD
Hallo
so?
Private Sub Worksheet_Change(ByVal Target As Range)
    On Error GoTo Fehler
    Const APPNAME = "Worksheet_Change"
    If Not Application.Intersect(Target, Range("A1:A3")) Is Nothing Then
        With Target
            If .Value < 590 And InStr(.Offset(0, 1), "fet") > 0 Then
                MsgBox ("Zahl U muss größer 590 sein!")
                Application.EnableEvents = False
                Application.Undo
            End If
        End With
        
    End If
    '*** Fehlerbehandlung 
    Err.Clear
Fehler:
    Application.EnableEvents = True
    If Err.Number <> 0 Then MsgBox "Fehler in Sub """ & APPNAME & """" & vbCrLf _
        & "Fehlernummer: " & Err.Number & vbLf & Err.Description: Err.Clear
End Sub

LG UweD
Anzeige
AW: Excel vba Change-Ereignis für bestimmten bereich
10.12.2019 10:59:54
dominik
Hallo Karl-Heinz und Uwe,
vielen Dank für eure schnelle Rückmeldung. Beide Varianten funktionieren und machen genau das was ich gesucht habe. Vielen Dank euch beiden.
Gruß
Dominik

147 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige