Home |
Search |
Today's Posts |
#1
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
Hi All,
I am rather confused as to why the following macro does not work properly. The problem is when the user presses the cancel button without entering anything in the Inputbox it starts looping! However, if the user presses OK without entering anything in the Inputbox then it exits! Can you see why. Thanks for your help. Dim UInput as string Dim Msg as string Msg = "Enter todays date" Do UInput = Application.inputbox(Msg) If UInput = "" then Exit Sub If Isdate(UInput) then Msgbox "Thank You" Exit Do End if Msg = "You did not enter a date" Msg = Msg & vbNewLine Msg = Msg & "Enter todays date" Loop Regards UJ |
#2
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
take a look at the Inputbox method in VBA Help. If the user click
Cancel, the value False is returned, which the assignment operator coerces to a string. Try this instead: Const Msg1 As String = "Enter today's date" Const Msg2 As String = "You did not enter a valid date." & _ vbNewLine & "Please enter today's date" Dim UInput As Variant Dim bLoop As Boolean Do UInput = Application.InputBox( _ Prompt:=IIf(bLoop, Msg2, Msg1), _ Default:=Date) If UInput = False Then Exit Sub bLoop = True Loop Until IsDate(UInput) n article , (Uddinj1) wrote: Hi All, I am rather confused as to why the following macro does not work properly. The problem is when the user presses the cancel button without entering anything in the Inputbox it starts looping! However, if the user presses OK without entering anything in the Inputbox then it exits! Can you see why. Thanks for your help. Dim UInput as string Dim Msg as string Msg = "Enter todays date" Do UInput = Application.inputbox(Msg) If UInput = "" then Exit Sub If Isdate(UInput) then Msgbox "Thank You" Exit Do End if Msg = "You did not enter a date" Msg = Msg & vbNewLine Msg = Msg & "Enter todays date" Loop Regards UJ |
#3
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
When the cancel button is pressed uinput = false
You code only checks for "" This is why your code is not exiting sub modify your code If UInput = "" or Uinput = false then Exit Su -- Message posted from http://www.ExcelForum.com |
#4
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
The cancel button is returning a value of False
Change hte IF statement to IF UInput= False then Exit Sub That should work Andres -----Original Message----- Hi All, I am rather confused as to why the following macro does not work properly. The problem is when the user presses the cancel button without entering anything in the Inputbox it starts looping! However, if the user presses OK without entering anything in the Inputbox then it exits! Can you see why. Thanks for your help. Dim UInput as string Dim Msg as string Msg = "Enter todays date" Do UInput = Application.inputbox(Msg) If UInput = "" then Exit Sub If Isdate(UInput) then Msgbox "Thank You" Exit Do End if Msg = "You did not enter a date" Msg = Msg & vbNewLine Msg = Msg & "Enter todays date" Loop Regards UJ . |
#5
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
on reflection, I'm confused about why this inputbox is even necessary.
Today's date can always be found using the Date function: UInput = Date In article , (Uddinj1) wrote: I am rather confused as to why the following macro does not work properly. |
#6
Posted to microsoft.public.excel.programming
|
|||
|
|||
Inputbox and cancel button
Hi,
I did not get to see your reply until now. I used today's date as an example. I need a date entered depending on other issues. However, the answer you provided works and it is exteremely useful to me. Thank you. Best wishes. Regards UJ -----Original Message----- on reflection, I'm confused about why this inputbox is even necessary. Today's date can always be found using the Date function: UInput = Date In article , (Uddinj1) wrote: I am rather confused as to why the following macro does not work properly. . |
Reply |
Thread Tools | Search this Thread |
Display Modes | |
|
|
Similar Threads | ||||
Thread | Forum | |||
Detecting Cancel in an InputBox Method | Excel Discussion (Misc queries) | |||
Cancel button in Inputbox method | Excel Programming | |||
Inputbox method using type:=8 - How to Cancel? | Excel Programming | |||
Inputbox method using type:=8 - How to Cancel? | Excel Programming | |||
Inputbox method using type:=8 - How to Cancel? | Excel Programming |