ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   msgbox shown twice! (https://www.excelbanter.com/excel-programming/389498-msgbox-shown-twice.html)

Arjan

msgbox shown twice!
 
Hi all,

I'm working with a textbox on a userform. As the input in the textbox exeeds
200 a msgbox apperas which warns the user. However, it is only a warning as
every value is possible..

However, when I doi want to alter the value and therefor 'empty' the textbox
the msgbox appears again! How can I prevent this from happening?

Please find my code below...

any help is appreaciated!

Arjan Bregman
the Netherlands


__________________________________________________ _______________

Private Sub TextBox5_Change()
Dim planklengte19x100 As String

'hier wordt de breedte bepaald van de zelfbouwpallet is en deze waarde
wordt in "PALLET PRINT" gezet..

If TextBox5.Value <= 200 And TextBox5.Value 0 Then
planklengte19x100 = TextBox5.Value
Sheets("PALLETDATA").Range("D10") = planklengte19x100

Else
MsgBox "Let op: de ingevoerde breedte is meer dan 2.00 meter!",
vbQuestion, "Correct ingevoerd?"

End If

End Sub
__________________________________________________ ________________



--
Arjan Bregman

*****
the knowledge is always there, maybe hidden, but it is there..
*****

Jim Rech

msgbox shown twice!
 
How can I prevent this from happening?

When your code changes the value in the textbox it causes the change event
code to be called. So you must set a flag so your code does not re-run:

Dim InUse As Boolean

Private Sub TextBox5_Change()
If Not InUse Then
InUse = True
TextBox5.Value = ""
InUse = False
End If
End Sub

You may be changing the value of the text box in another sub but the same
principle applies.

--
Jim
"Arjan" wrote in message
...
| Hi all,
|
| I'm working with a textbox on a userform. As the input in the textbox
exeeds
| 200 a msgbox apperas which warns the user. However, it is only a warning
as
| every value is possible..
|
| However, when I doi want to alter the value and therefor 'empty' the
textbox
| the msgbox appears again! How can I prevent this from happening?
|
| Please find my code below...
|
| any help is appreaciated!
|
| Arjan Bregman
| the Netherlands
|
|
| __________________________________________________ _______________
|
| Private Sub TextBox5_Change()
| Dim planklengte19x100 As String
|
| 'hier wordt de breedte bepaald van de zelfbouwpallet is en deze waarde
| wordt in "PALLET PRINT" gezet..
|
| If TextBox5.Value <= 200 And TextBox5.Value 0 Then
| planklengte19x100 = TextBox5.Value
| Sheets("PALLETDATA").Range("D10") = planklengte19x100
|
| Else
| MsgBox "Let op: de ingevoerde breedte is meer dan 2.00 meter!",
| vbQuestion, "Correct ingevoerd?"
|
| End If
|
| End Sub
| __________________________________________________ ________________
|
|
|
| --
| Arjan Bregman
|
| *****
| the knowledge is always there, maybe hidden, but it is there..
| *****



Dave Peterson

msgbox shown twice!
 
Instead of a msgbox, have you thought about adding a label to the userform.

It might be less intrusive--give it a nice bold red font so that any warning
won't be missed.

Arjan wrote:

Hi all,

I'm working with a textbox on a userform. As the input in the textbox exeeds
200 a msgbox apperas which warns the user. However, it is only a warning as
every value is possible..

However, when I doi want to alter the value and therefor 'empty' the textbox
the msgbox appears again! How can I prevent this from happening?

Please find my code below...

any help is appreaciated!

Arjan Bregman
the Netherlands

__________________________________________________ _______________

Private Sub TextBox5_Change()
Dim planklengte19x100 As String

'hier wordt de breedte bepaald van de zelfbouwpallet is en deze waarde
wordt in "PALLET PRINT" gezet..

If TextBox5.Value <= 200 And TextBox5.Value 0 Then
planklengte19x100 = TextBox5.Value
Sheets("PALLETDATA").Range("D10") = planklengte19x100

Else
MsgBox "Let op: de ingevoerde breedte is meer dan 2.00 meter!",
vbQuestion, "Correct ingevoerd?"

End If

End Sub
__________________________________________________ ________________

--
Arjan Bregman

*****
the knowledge is always there, maybe hidden, but it is there..
*****


--

Dave Peterson

Arjan

msgbox shown twice!
 
Jim,

thnx for the reply. However, I can't get it to work properly..
how should your code look like in combination with mine?

Arjan



"Jim Rech" wrote:

How can I prevent this from happening?


When your code changes the value in the textbox it causes the change event
code to be called. So you must set a flag so your code does not re-run:

Dim InUse As Boolean

Private Sub TextBox5_Change()
If Not InUse Then
InUse = True
TextBox5.Value = ""
InUse = False
End If
End Sub

You may be changing the value of the text box in another sub but the same
principle applies.

--
Jim
"Arjan" wrote in message
...
| Hi all,
|
| I'm working with a textbox on a userform. As the input in the textbox
exeeds
| 200 a msgbox apperas which warns the user. However, it is only a warning
as
| every value is possible..
|
| However, when I doi want to alter the value and therefor 'empty' the
textbox
| the msgbox appears again! How can I prevent this from happening?
|
| Please find my code below...
|
| any help is appreaciated!
|
| Arjan Bregman
| the Netherlands
|
|
| __________________________________________________ _______________
|
| Private Sub TextBox5_Change()
| Dim planklengte19x100 As String
|
| 'hier wordt de breedte bepaald van de zelfbouwpallet is en deze waarde
| wordt in "PALLET PRINT" gezet..
|
| If TextBox5.Value <= 200 And TextBox5.Value 0 Then
| planklengte19x100 = TextBox5.Value
| Sheets("PALLETDATA").Range("D10") = planklengte19x100
|
| Else
| MsgBox "Let op: de ingevoerde breedte is meer dan 2.00 meter!",
| vbQuestion, "Correct ingevoerd?"
|
| End If
|
| End Sub
| __________________________________________________ ________________
|
|
|
| --
| Arjan Bregman
|
| *****
| the knowledge is always there, maybe hidden, but it is there..
| *****





All times are GMT +1. The time now is 05:07 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com