|
|
Thread Tools | Display Modes |
#1
|
|||
|
|||
UserForm textbox exit event activated with navigation buttons...why? help?
HI Can anyone offer help on my invoice entry Excel User Form? here is the issue.
I have the following line of code for the cutomer number textbox in the form: Private Sub txtBillToCust_Exit(ByVal Cancel As MSForms.ReturnBoolean) 'Checks the txtBillToCust field for a blank entry If txtBillToCust = vbNullString Then txtBillToCust.BackColor = &HFF& MsgBox "Please enter the 8-digit Customer Number" Cancel = True End If End Sub This code will highlight the textbox with red color, prompt the user to enter the custmer number and finally clear the color and return the user to the text box where they can enter the customer number. However, this code is causing issues with the First, Previous, Next, Last, Save File, Close navigation buttons....as when i click on any of these buttons, they do not function and the customer textbox continues to prompt me for the custmer number as the code above appears to continue. My guess is that the exit event on the customer textbox is being activated whenever any of the navigation buttons are being depressed. I do not know why this is. Does anyone know how to correct for this? do i need to add some error handling or other code to the cmdNext, cmdPrevious and other buttons? Or is there something i need to add to the customer textbox exit sub procedure listed above? any help would be greatly appreciated as i am just dumbfounded at this time. Thank you in advance. |
#2
|
|||
|
|||
Quote:
Personally I wouldn't do that check until just before writing the info to the spreadsheet, then I'd check everything, one after the other, in the order things get entered, and set focus to anything not acceptable, displaying a message at that point, and exiting the write sub. |
#3
|
||||
|
||||
I think I too might follow the approach suggested by NoSparks, but the following should work
Code:
Private Sub txtBillToCust_Exit(ByVal Cancel As MSForms.ReturnBoolean) 'Checks the txtBillToCust field for a blank entry If Not Len(txtBillToCust.Text) = 8 Then txtBillToCust.BackColor = &HFF& MsgBox "Please enter the 8-digit Customer Number" Cancel = True txtBillToCust.Text = "" txtBillToCust.SetFocus Exit Sub Else txtBillToCust.BackColor = &H80000005 End If End Sub
__________________
Graham Mayor - MS MVP (Word) (2002-2019) Visit my web site for more programming tips and ready made processes www.gmayor.com |
Thread Tools | |
Display Modes | |
|
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
Can't use RTF Textbox in Userform (Word2007) | dherr | Word VBA | 2 | 03-16-2015 07:50 AM |
Userform VBA Textbox Calculation | MarkAn | Word VBA | 2 | 08-15-2014 06:50 AM |
Hyperlink not activated by footpedal | Donone | PowerPoint | 2 | 05-05-2014 04:42 AM |
Display result in textbox based on the input of another textbox | scarymovie | Word VBA | 5 | 05-16-2012 07:05 PM |
Number format in Textbox on userform | officeclerk | Excel Programming | 2 | 04-17-2012 01:23 AM |