• Privacywetgeving
    Het is bij Helpmij.nl niet toegestaan om persoonsgegevens in een voorbeeld te plaatsen. Alle voorbeelden die persoonsgegevens bevatten zullen zonder opgaaf van reden verwijderd worden. In de vraag zal specifiek vermeld moeten worden dat het om fictieve namen gaat.

VBA code voor msg box als een waarde in kolom negatief

Status
Niet open voor verdere reacties.

tonissteiner

Gebruiker
Lid geworden
17 sep 2008
Berichten
352
Hallo,

kan iemand me helpen met het aanpassen van de volgende code aub:


Code:
Private Sub Worksheet_Change(ByVal Target As Range)
        
        If Range("B2").Value < 0 Then
            MsgBox "De tabel bevat een negatief aantal", vbExclamation, "OPGELET !"
        End If
     
End Sub

Deze code geeft dus een msgBox als in de cel B2 een negatieve waarde staat. Nu zou ik deze code graag gebruiken op de volledige kolom B. Heb al zitten proberen met Range("B:B").Value en EntireColumn echter krijg ik telkens een foutmelding.

alvast bedankt voor jullie hulp
 
Zo bijvoorbeeld:
Code:
Private Sub Worksheet_Change(ByVal Target As Range)
    If Target.Column = 2 Then
        If Target.Value < 0 Then
            MsgBox "De tabel bevat een negatief aantal", vbExclamation, "OPGELET !"
        End If
    End If
End Sub
 
Hallo OctaFish,

bedankt voor je snelle reactie en "bijna" oplossing. Jouw code werkt enkel als de waarde die je ingeeft negatief is. Stel dat er al een negatieve waarde in de kolom zou staan zou de code ook moeten werken
 
Dat is een rare werking van je msgbox, want dan wordt je de hele dag door lastig gevallen door msgboxen die je vertellen dat er ergens in Kolom B een negatief getal staat. Dat moet je niet willen :). Als je een indicatie wilt dat er ergens een negatief getal staat, kun je beter in die kolom Voorwaardelijke Opmaak toepassen. Dan heb je altijd een visuele indicatie.
 
Je kan deze er nog bijzetten voor de msgbox als je de cel selecteert.

Code:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
    If Target.Column = 2 Then
        If Target.Value < 0 Then
            MsgBox "De tabel bevat een negatief aantal", vbExclamation, "OPGELET !"
        End If
    End If
End Sub
 
Daar heb je een punt. had daar nog niet bij stil gestaan. misschien toch maar best met de eerste code van je werken. uiteindelijk is het maar een waarschuwing en die komt het best naar voor als je de waarde invult.

heel hartelijk bedankt OctaFish
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan