![]() |
What is wrong with this?
Hello all,
Here is my code: Public Sub EnterTime() Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) If pdteInputBox = "" Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub The problem I'm having is if I answer "No" to the message box and then enter a time (9:03) in the input box and hit "OK", I get a "Run-time error '13': Type mismatch". I also noticed that I got the same error when I hit "Cancel" on the input box. Any help would be greatly appreciated, Conan Kelly |
What is wrong with this?
try changing
If pdteInputBox = "" Then to If pdteInputBox = 0 Then -- Regards, Tom Ogilvy "Conan Kelly" <CTBarbarin at msn dot com wrote in message ... Hello all, Here is my code: Public Sub EnterTime() Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) If pdteInputBox = "" Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub The problem I'm having is if I answer "No" to the message box and then enter a time (9:03) in the input box and hit "OK", I get a "Run-time error '13': Type mismatch". I also noticed that I got the same error when I hit "Cancel" on the input box. Any help would be greatly appreciated, Conan Kelly |
What is wrong with this?
Try
If CStr(pdteInputBox) = "" Then ..... You might think about skipping the first messagebox and just always popping up the input with the current time pre-filled. It's less code, just as quick for your user as your "two-pronged" approach, and minimizes the number of different UI prompts the user has to get used to. Tim -- Tim Williams Palo Alto, CA "Conan Kelly" <CTBarbarin at msn dot com wrote in message ... Hello all, Here is my code: Public Sub EnterTime() Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) If pdteInputBox = "" Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub The problem I'm having is if I answer "No" to the message box and then enter a time (9:03) in the input box and hit "OK", I get a "Run-time error '13': Type mismatch". I also noticed that I got the same error when I hit "Cancel" on the input box. Any help would be greatly appreciated, Conan Kelly |
What is wrong with this?
Tom,
Thanks. That solved the first problem. But I'm still getting the error message if I hit "Cancel" on the input box. Thanks again for the help, Conan "Tom Ogilvy" wrote in message ... try changing If pdteInputBox = "" Then to If pdteInputBox = 0 Then -- Regards, Tom Ogilvy "Conan Kelly" <CTBarbarin at msn dot com wrote in message ... Hello all, Here is my code: Public Sub EnterTime() Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) If pdteInputBox = "" Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub The problem I'm having is if I answer "No" to the message box and then enter a time (9:03) in the input box and hit "OK", I get a "Run-time error '13': Type mismatch". I also noticed that I got the same error when I hit "Cancel" on the input box. Any help would be greatly appreciated, Conan Kelly |
What is wrong with this?
Public Sub EnterTime()
Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else On Error Resume Next pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) On Error goto 0 If pdteInputBox = 0 Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub -- Regards, Tom Ogilvy "Conan Kelly" <CTBarbarin at msn dot com wrote in message ... Tom, Thanks. That solved the first problem. But I'm still getting the error message if I hit "Cancel" on the input box. Thanks again for the help, Conan "Tom Ogilvy" wrote in message ... try changing If pdteInputBox = "" Then to If pdteInputBox = 0 Then -- Regards, Tom Ogilvy "Conan Kelly" <CTBarbarin at msn dot com wrote in message ... Hello all, Here is my code: Public Sub EnterTime() Dim pdteInputBox As Date gintMsgBoxResponse = MsgBox("The current time is: " _ & Format(Time, "h:mm AM/PM") & "." & vbCrLf & vbCrLf _ & "Would you like to enter this time?", vbQuestion + _ vbYesNo, "Current Time") If gintMsgBoxResponse = vbYes Then ActiveCell.Value = Time Else pdteInputBox = TimeValue(InputBox("Please enter the correct time.", _ "Time", Format(Time, "h:mm AM/PM"))) If pdteInputBox = "" Then Exit Sub Else ActiveCell.Value = pdteInputBox End If End If gintMsgBoxResponse = 0 End Sub The problem I'm having is if I answer "No" to the message box and then enter a time (9:03) in the input box and hit "OK", I get a "Run-time error '13': Type mismatch". I also noticed that I got the same error when I hit "Cancel" on the input box. Any help would be greatly appreciated, Conan Kelly |
All times are GMT +1. The time now is 09:43 AM. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com