Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
When using an inputbox, how do you keep it from generating an error i the user clicks cancel? I want them to be able to cancel it, just no have to think about whether they should end or debug. So far I've had no luck with things such as ..... if VBcancel then end elseif ..... because that cuts my program short. What is the trick -- wilro8 ----------------------------------------------------------------------- wilro85's Profile: http://www.excelforum.com/member.php...fo&userid=2693 View this thread: http://www.excelforum.com/showthread.php?threadid=46605 |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
Hi Wilro85,
Try something like: '===================== Public Sub TesterX() Dim sStr As String sStr = InputBox(Prompt:="Please type your name", _ Title:="InputBox Demo") If StrPtr(sStr) = 0 Then MsgBox "You pressed Cancel" Else If Len(sStr) = 0 Then MsgBox "OK was pressed but no entry was made." Else MsgBox "Your entry was: " & sStr End If End If End Sub '<<===================== --- Regards, Norman "wilro85" wrote in message ... When using an inputbox, how do you keep it from generating an error if the user clicks cancel? I want them to be able to cancel it, just not have to think about whether they should end or debug. So far I've had no luck with things such as .... if VBcancel then end elseif .... because that cuts my program short. What is the trick? -- wilro85 ------------------------------------------------------------------------ wilro85's Profile: http://www.excelforum.com/member.php...o&userid=26935 View this thread: http://www.excelforum.com/showthread...hreadid=466059 |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
Two possible approachs:
1) If you want them to explicitly specify that they want to cancel: Do While strTemp = "" strTemp = InputBox("Enter a value or CANCEL to Abort...", "MyCaption", "MyDefault") Loop Select Case uCase(Trim(strTemp)) Case "CANCEL" Exit Sub Case Else ' Do something else End Select 2): If you don't want to be that demanding (and relying on fact that the InputBox returns an empty string if nothing is input): strTemp = InputBox("Enter a value or CANCEL to Abort...", "MyCaption", "MyDefault") Select Case uCase(Trim(strTemp)) Case "CANCEL", "" Exit Sub Case Else ' Do something else End Select HTH, -- George Nicholson Remove 'Junk' from return address. "wilro85" wrote in message ... When using an inputbox, how do you keep it from generating an error if the user clicks cancel? I want them to be able to cancel it, just not have to think about whether they should end or debug. So far I've had no luck with things such as .... if VBcancel then end elseif .... because that cuts my program short. What is the trick? -- wilro85 ------------------------------------------------------------------------ wilro85's Profile: http://www.excelforum.com/member.php...o&userid=26935 View this thread: http://www.excelforum.com/showthread...hreadid=466059 |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
Norman, this works pefectly.
What is strPtr? I pressed F1 and got "no help available". Art "Norman Jones" wrote: Hi Wilro85, Try something like: '===================== Public Sub TesterX() Dim sStr As String sStr = InputBox(Prompt:="Please type your name", _ Title:="InputBox Demo") If StrPtr(sStr) = 0 Then MsgBox "You pressed Cancel" Else If Len(sStr) = 0 Then MsgBox "OK was pressed but no entry was made." Else MsgBox "Your entry was: " & sStr End If End If End Sub '<<===================== --- Regards, Norman "wilro85" wrote in message ... When using an inputbox, how do you keep it from generating an error if the user clicks cancel? I want them to be able to cancel it, just not have to think about whether they should end or debug. So far I've had no luck with things such as .... if VBcancel then end elseif .... because that cuts my program short. What is the trick? -- wilro85 ------------------------------------------------------------------------ wilro85's Profile: http://www.excelforum.com/member.php...o&userid=26935 View this thread: http://www.excelforum.com/showthread...hreadid=466059 |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
StrPtr is an undocumented function that returns the memory
address of a string variable. Similar undocumented functions include VarPtr (for any type of variable) and ObjPtr (for object variables). -- Cordially, Chip Pearson Microsoft MVP - Excel Pearson Software Consulting, LLC www.cpearson.com "ArthurJ" wrote in message ... Norman, this works pefectly. What is strPtr? I pressed F1 and got "no help available". Art "Norman Jones" wrote: Hi Wilro85, Try something like: '===================== Public Sub TesterX() Dim sStr As String sStr = InputBox(Prompt:="Please type your name", _ Title:="InputBox Demo") If StrPtr(sStr) = 0 Then MsgBox "You pressed Cancel" Else If Len(sStr) = 0 Then MsgBox "OK was pressed but no entry was made." Else MsgBox "Your entry was: " & sStr End If End If End Sub '<<===================== --- Regards, Norman "wilro85" wrote in message ... When using an inputbox, how do you keep it from generating an error if the user clicks cancel? I want them to be able to cancel it, just not have to think about whether they should end or debug. So far I've had no luck with things such as .... if VBcancel then end elseif .... because that cuts my program short. What is the trick? -- wilro85 ------------------------------------------------------------------------ wilro85's Profile: http://www.excelforum.com/member.php...o&userid=26935 View this thread: http://www.excelforum.com/showthread...hreadid=466059 |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox question
Hi Art,
What is strPtr? I pressed F1 and got "no help available". See Karl Peterson's site: http://vb.mvps.org/tips/varptr.asp --- Regards, Norman "ArthurJ" wrote in message ... Norman, this works pefectly. What is strPtr? I pressed F1 and got "no help available". Art "Norman Jones" wrote: Hi Wilro85, Try something like: '===================== Public Sub TesterX() Dim sStr As String sStr = InputBox(Prompt:="Please type your name", _ Title:="InputBox Demo") If StrPtr(sStr) = 0 Then MsgBox "You pressed Cancel" Else If Len(sStr) = 0 Then MsgBox "OK was pressed but no entry was made." Else MsgBox "Your entry was: " & sStr End If End If End Sub '<<===================== --- Regards, Norman "wilro85" wrote in message ... When using an inputbox, how do you keep it from generating an error if the user clicks cancel? I want them to be able to cancel it, just not have to think about whether they should end or debug. So far I've had no luck with things such as .... if VBcancel then end elseif .... because that cuts my program short. What is the trick? -- wilro85 ------------------------------------------------------------------------ wilro85's Profile: http://www.excelforum.com/member.php...o&userid=26935 View this thread: http://www.excelforum.com/showthread...hreadid=466059 |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Another InputBox question... | Excel Discussion (Misc queries) | |||
inputbox question | Excel Discussion (Misc queries) | |||
Inputbox Question | Excel Programming | |||
VBA question involving an InputBox | Excel Programming | |||
Inputbox question | Excel Programming |