• 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.

Pop-up macro automatisch uitvoeren.

  • Onderwerp starter Onderwerp starter 1098
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

1098

Gebruiker
Lid geworden
8 jun 2006
Berichten
7
Hallo,

Mijn vraag:
Ik heb in dit forum een code gevonden waarmee ik een popup tevoorschijn kan laten komen wanneer een bepaalde cel aan een voorwaarde voldoet:

Private Sub Worksheet_Calculate()
If Cells(12, 49).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

Hierbij betekent Cells(12, 49) de cel AW12.

Nu zou ik graag willen dat Excel deze functie uitvoerd én bij het starten van Excel én bij een wijziging in cel AW12.

Kan iemand mij hierbij helpen?
Bedankt!
 
Private Sub Workbook_Open()
MsgBox ("Waarde in cel AW12 is te klein!")
End Sub

als je deze code in ThisWorkbook zet zou het moeten werken.

groet,

frank
 
Zet deze code onder het betreffende blad. Met rechts op de bladtab klikken en kiezen voor programmacode weergeven.

Private Sub Worksheet_Change(ByVal Target As Range)
If Cells(1, 1).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

Zet deze code in This workbook.

Private Sub Workbook_Open()
If Cells(1, 1).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub
 
Zet dit achter je blad :

Private Sub Worksheet_Change(ByVal Target As Range)
If Cells(12, 49).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

En dit in ThisWorkbook :

Private Sub Workbook_Open()
If Cells(12, 49).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

Pierre
 
Het werkt, bedankt!
Nog een vraagje, kan ik deze code zo aanpassen dat de foutmelding alleen weergegeven wordt wanneer cel AW12 gewijzigd wordt?
Daarnaast zou ik graag willen weten of het mogelijk is het telkens verschijnen van de foutmelding met een knop in het exceldocument uit te zetten?
Alvast bedankt!

Groeten,
Kees
 
Laatst bewerkt:
Kees,
Als je het antwoord bedoeld dat ik je gaf ( Pierre heeft een zelfde antwoord gegeven) is het een zaak van de cellocatie wijzigen in de code. Uit de code die je hebt meegestuurd blijkt dat je de cel verwijzing kent.
2. Bedoel je de waarschuwing bij het openen van het document of tijdens het werken met het document?
 
Ik bedoel dat de waarschuwing nu gegeven wordt bij het wijzigen van alle willekeurige cellen, niet enkel bij het wijzigen van cel AW12.
Daarnaast is mijn vraag of ik deze macro door middel van een link in het Excel-document uit kan zetten?

Merci
Kees
 
Kees verander de code onder het blad in:

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Row = 12 And Target.Column = 49 And Target.Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

Inderdaad, even niet bij nagedacht! Met deze code krijg je alleen een waarschuwing al je AW 12 veranderd ( en de waarde minder is dan 0)

Wil je nu nog een andere oplossing og gaat het zo?
 
Bedankt! het werkt!

Nu nog een laatste vraag, deze functie werkt niet wanneer AW12 een doorverwijzing is en de waarde van de cel verandert doordat een andere cel gewijzigd wordt.
Is er een aanpassing mogelijk waardoor dit wel kan, of kan ik door middel van deze code meerdere cellen aangeven waar na wijziging een pop-up melding komt?
Wederom alvast bedankt.

Vriendelijke groeten,
Kees
 
Kees,
Ik weet niet hoe jouw bestand in elkaar steekt dus kan ik moeilijk een antwoord geven. Je kunt de broncel opgeven maar die haalt misschien ook weer ergens anders gegevens vandaan. Om op je eerdere suggestie terug te komen kun je ook de code onder een knop zetten. Je zult dan wel, in ieder geval voor het afsluiten, op de knop moeten klikken om de waarschuwing al of niet te tonen. Maak een nieuwe module aan in de VBA editor en plak deze code er in:
Sub Waarschuwing()
If Cells(12, 49).Value < 0 Then
MsgBox ("Waarde is te klein!")
End If
End Sub

Maak een knop in het werkblad en wijs de macro toe. Als je niet weet hoe dat moet dan helpen we je gewoon verder.:D
 
Ik kom er nog niet helemaal uit. Ik heb een voorbeeldbestand toegevoegd waarin staat wat ik nu allemaal ingevuld heb. Het originele bestand kan ik helaas niet geven. Zou je misschien eens kunnen kijken wat ik fout doe?
Merci!
 

Bijlagen

Laatst bewerkt:
Kees,
Geen bestand te zien. Even het bestand zippen en uploaden. XLS bestanden kunnen niet geplaatst worden.
 
Volgens mij heb ik het nu wel goed, (zie bestand boven jouw reactie)
 
Kees,
Ten eerste had je de code onder een niet bestaande knop gezet (CommandButton1).
Ten tweede stond de macrocode (Sub) onder een Private Sub en dat werkt niet. Zie de code.

Private Sub CommandButton1_Click()
Sub Waarschuwing()
If Cells(12, 49).Value < 0 Then
MsgBox ("WARNING: The difference between the MARK UP and the MARK UP GOAL is NEGATIVE.")
End If
End Sub
End Sub

De code aangepast naar:
Private Sub Controle_Click()
Cells(12, 49).Select
If Cells(12, 49).Value < 0 Then
MsgBox ("WARNING: The difference between the MARK UP and the MARK UP GOAL is NEGATIVE.")
End If
End Sub

Succes.
 
Laatst bewerkt:
Kees,
Heb het verkeerde bestand bijgevoegd. Hier het goede.
 
Laatst bewerkt:
Het werkt perfect!
Cor, bedankt voor de moeite!

Groeten,
Kees
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan