Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Backspace brings up an error
I have a userform with 4 textboxes for 4 different sets of numerical
data, which are then processed to give a result. The basic code for each is: Public Sub TextBox1_Change() Dim current As Single current = TextBox1.Text When the correct data is put in all works fine, but if I make a mistake and use backspace to delete the entry so I can put in the correct numbers I get a "Run Time error 13, Type mismatch", when the first number is deleted (ie the last to be removed by the backspace). The debug highlights the current = terxtbox1.text line but that's it. Can anyone please put me right so I can just change the numbers by backspace? Thanks Tony |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Backspace brings up an error
Try changing the delcaration of Current to
Dim current As String If you need to convert this to a number use the VAL function Dim current As Single current = Val(TextBox1.Text) "Greybeard" wrote: I have a userform with 4 textboxes for 4 different sets of numerical data, which are then processed to give a result. The basic code for each is: Public Sub TextBox1_Change() Dim current As Single current = TextBox1.Text When the correct data is put in all works fine, but if I make a mistake and use backspace to delete the entry so I can put in the correct numbers I get a "Run Time error 13, Type mismatch", when the first number is deleted (ie the last to be removed by the backspace). The debug highlights the current = terxtbox1.text line but that's it. Can anyone please put me right so I can just change the numbers by backspace? Thanks Tony |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Backspace brings up an error
Hi,
2 ways current = Val(TextBox1.Text) or If TextBox1.Text < "" Then current = TextBox1.Text End If You seem to have a data type confusion with current dimensioned as Single while taking the value .text Mike "Greybeard" wrote: I have a userform with 4 textboxes for 4 different sets of numerical data, which are then processed to give a result. The basic code for each is: Public Sub TextBox1_Change() Dim current As Single current = TextBox1.Text When the correct data is put in all works fine, but if I make a mistake and use backspace to delete the entry so I can put in the correct numbers I get a "Run Time error 13, Type mismatch", when the first number is deleted (ie the last to be removed by the backspace). The debug highlights the current = terxtbox1.text line but that's it. Can anyone please put me right so I can just change the numbers by backspace? Thanks Tony |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Backspace brings up an error
On 25 Oct, 10:29, Mike H wrote:
Hi, 2 ways current = Val(TextBox1.Text) or If TextBox1.Text < "" Then * * current = TextBox1.Text End If You seem to have a data type confusion with current dimensioned as Single while taking the value .text Mike "Greybeard" wrote: I have a userform with 4 textboxes for 4 different sets of numerical data, which are then processed to give a result. The basic code for each is: Public Sub TextBox1_Change() Dim current As Single current = TextBox1.Text When the correct data is put in all works fine, but if I make a mistake and use backspace to delete the entry so I can put in the correct numbers I get a "Run Time error 13, *Type mismatch", when the first number is deleted (ie the last to be removed by the backspace). The debug highlights the current = terxtbox1.text line but that's it. Can anyone please put me right so I can just change the numbers by backspace? Thanks Tony Hi, Thanks to all of you who replied. Through lots of trial and error (no pun intended) I have actually got it to work fine using the following in each of the 4 subs for each of the Textboxes: Public Sub TextBox1_Change() Dim current As Single On Error Resume Next current = TextBox2.Text End Sub It's probably all wrong, but it does not have any adverse effects on the overall running of the whole programme so, as a pragmatist, it's a case of 'if it works don't fix it'. Regards Tony |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Backspace brings up an error
You did not get it to work, you only got it to quit sending the error
message. But if it satisfies you, then that is all that matters. "Greybeard" wrote: On 25 Oct, 10:29, Mike H wrote: Hi, 2 ways current = Val(TextBox1.Text) or If TextBox1.Text < "" Then current = TextBox1.Text End If You seem to have a data type confusion with current dimensioned as Single while taking the value .text Mike "Greybeard" wrote: I have a userform with 4 textboxes for 4 different sets of numerical data, which are then processed to give a result. The basic code for each is: Public Sub TextBox1_Change() Dim current As Single current = TextBox1.Text When the correct data is put in all works fine, but if I make a mistake and use backspace to delete the entry so I can put in the correct numbers I get a "Run Time error 13, Type mismatch", when the first number is deleted (ie the last to be removed by the backspace). The debug highlights the current = terxtbox1.text line but that's it. Can anyone please put me right so I can just change the numbers by backspace? Thanks Tony Hi, Thanks to all of you who replied. Through lots of trial and error (no pun intended) I have actually got it to work fine using the following in each of the 4 subs for each of the Textboxes: Public Sub TextBox1_Change() Dim current As Single On Error Resume Next current = TextBox2.Text End Sub It's probably all wrong, but it does not have any adverse effects on the overall running of the whole programme so, as a pragmatist, it's a case of 'if it works don't fix it'. Regards Tony |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
backspace key | Excel Programming | |||
No Backspace key in VBA Debugger Help | Setting up and Configuration of Excel | |||
Delete row if formula brings back an error | Excel Programming | |||
vbBack... not like a backspace | Excel Programming | |||
Backspace and percentage, please help | Excel Programming |