Welcome to the { mindfrost82.com } forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.

Go Back   { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Microsoft > MS Office > Excel

Reply
 
LinkBack Thread Tools Search this Thread Display Modes
  #1 (permalink)  
Old 07-22-2008, 08:21 PM
Pete
 
Posts: n/a
Quick Time Entry

I have copied Chip Pearson's code into my Spreadsheet and all seems
well until I enter a time beginning with a zero. Can anyone poinit out
what I'm doing wrong?

If I enter 1500 I get 15:00 which is what I expect

If I enter 0000 for midnight I get an error from the EndMacro, same
thing if I enter 0600

The Cells are formatted to hh:mm

Private Sub Worksheet_Change(ByVal Target As Excel.Range)
Dim TimeStr As String

On Error GoTo EndMacro
If Application.Intersect(Target, Range("B21:C28")) Is Nothing Then
Exit Sub
End If
If Target.Cells.Count > 1 Then
Exit Sub
End If
If Target.Value = "" Then
Exit Sub
End If

Application.EnableEvents = False
With Target
If .HasFormula = False Then
Select Case Len(.Value)
Case 4 ' e.g., 1234 = 12:34
TimeStr = Left(.Value, 2) & ":" & _
Right(.Value, 2)
Case Else
Err.Raise 0
End Select
.Value = TimeValue(TimeStr)
End If
End With
Application.EnableEvents = True
Exit Sub
EndMacro:
MsgBox "You did not enter a valid time"
Application.EnableEvents = True
End Sub

Thanks

Pete
Reply With Quote
  #2 (permalink)  
Old 07-22-2008, 08:44 PM
Pete_UK
 
Posts: n/a
Re: Quick Time Entry

You've left several Case statements out of Chip's code, such that you
can now only enter a 4-digit number. His original code allowed you to
enter 1 to 6 digits and converted into the appropriate time. So you
would only need to enter 600 (not 0600), and the leading zero would be
added on for you. As the code uses .Value any leading zeros from your
entry are removed, but then you only have a 3-digit number and you do
not have a corresponding Case for that.

I suggest you re-instate the full code.

Hope this helps.

Pete


On Jul 22, 8:21*pm, Pete <psowe...@murton-view.freeserve.co.uk> wrote:
> I have copied Chip Pearson's code into my Spreadsheet and all seems
> well until I enter a time beginning with a zero. Can anyone poinit out
> what I'm doing wrong?
>
> If I enter 1500 I get 15:00 which is what I expect
>
> If I enter 0000 for midnight I get an error from the EndMacro, same
> thing if I enter 0600
>
> The Cells are formatted to hh:mm
>
> Private Sub Worksheet_Change(ByVal Target As Excel.Range)
> Dim TimeStr As String
>
> On Error GoTo EndMacro
> If Application.Intersect(Target, Range("B21:C28")) Is Nothing Then
> * * Exit Sub
> End If
> If Target.Cells.Count > 1 Then
> * * Exit Sub
> End If
> If Target.Value = "" Then
> * * Exit Sub
> End If
>
> Application.EnableEvents = False
> With Target
> If .HasFormula = False Then
> * * Select Case Len(.Value)
> * * * * Case 4 ' e.g., 1234 = 12:34
> * * * * * * TimeStr = Left(.Value, 2) & ":" & _
> * * * * * * Right(.Value, 2)
> * * * * Case Else
> * * * * * * Err.Raise 0
> * * End Select
> * * .Value = TimeValue(TimeStr)
> End If
> End With
> Application.EnableEvents = True
> Exit Sub
> EndMacro:
> MsgBox "You did not enter a valid time"
> Application.EnableEvents = True
> End Sub
>
> Thanks
>
> Pete


Reply With Quote
  #3 (permalink)  
Old 07-22-2008, 09:17 PM
Pete
 
Posts: n/a
Re: Quick Time Entry

On 22 Jul, 20:44, Pete_UK <pashu...@auditel.net> wrote:
> You've left several Case statements out of Chip's code, such that you
> can now only enter a 4-digit number. His original code allowed you to
> enter 1 to 6 digits and converted into the appropriate time. So you
> would only need to enter 600 (not 0600), and the leading zero would be
> added on for you. As the code uses .Value any leading zeros from your
> entry are removed, but then you only have a 3-digit number and you do
> not have a corresponding Case for that.
>
> I suggest you re-instate the full code.
>
> Hope this helps.
>
> Pete
>
> On Jul 22, 8:21*pm, Pete <psowe...@murton-view.freeserve.co.uk> wrote:
>
>
>
> > I have copied Chip Pearson's code into my Spreadsheet and all seems
> > well until I enter a time beginning with a zero. Can anyone poinit out
> > what I'm doing wrong?

>
> > If I enter 1500 I get 15:00 which is what I expect

>
> > If I enter 0000 for midnight I get an error from the EndMacro, same
> > thing if I enter 0600

>
> > The Cells are formatted to hh:mm

>
> > Private Sub Worksheet_Change(ByVal Target As Excel.Range)
> > Dim TimeStr As String

>
> > On Error GoTo EndMacro
> > If Application.Intersect(Target, Range("B21:C28")) Is Nothing Then
> > * * Exit Sub
> > End If
> > If Target.Cells.Count > 1 Then
> > * * Exit Sub
> > End If
> > If Target.Value = "" Then
> > * * Exit Sub
> > End If

>
> > Application.EnableEvents = False
> > With Target
> > If .HasFormula = False Then
> > * * Select Case Len(.Value)
> > * * * * Case 4 ' e.g., 1234 = 12:34
> > * * * * * * TimeStr = Left(.Value, 2) & ":" & _
> > * * * * * * Right(.Value, 2)
> > * * * * Case Else
> > * * * * * * Err.Raise 0
> > * * End Select
> > * * .Value = TimeValue(TimeStr)
> > End If
> > End With
> > Application.EnableEvents = True
> > Exit Sub
> > EndMacro:
> > MsgBox "You did not enter a valid time"
> > Application.EnableEvents = True
> > End Sub

>
> > Thanks

>
> > Pete- Hide quoted text -

>
> - Show quoted text -


Thanks for that, I only want to enter four digits, but putting CHip's
code back in has fixed my problem.

Pete
Reply With Quote
  #4 (permalink)  
Old 07-22-2008, 09:34 PM
Pete_UK
 
Posts: n/a
Re: Quick Time Entry

Okay, glad to hear it.

Pete

On Jul 22, 9:17*pm, Pete <psowe...@murton-view.freeserve.co.uk> wrote:
>
> Thanks for that, I only want to enter four digits, but putting CHip's
> code back in has fixed my problem.
>
> Pete

Reply With Quote
Reply

  { mindfrost82.com } > Gadget Corner > Tech Newsgroups > Microsoft > MS Office > Excel


Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are Off
[IMG] code is Off
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On



All times are GMT. The time now is 03:22 AM.


Powered by vBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.1.0 ©2007, Crawlability, Inc.
© 1999-2008 mindfrost82.com v11.0


Sponsors:
eHarmony Coupon | Mortgage Calculator | ADHD Coach | Currency Converter | Mortgage Calculator



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114