4 Leave Cover
4 Leave Cover

Reputation: 1276

EXCEL VBA Timevalue format (hh:mm am/pm)

How do I set the format for timevalue for 12-hour clock without second. For example: hh:mm AM/PM. Right now I'm using Format(TimeValue(Now), "hh:mm") but it wont display AM/PM.

Thanks in advance.

Upvotes: 2

Views: 68915

Answers (1)

Ken White
Ken White

Reputation: 125620

Change your format string to include the indicator for AM/PM (based on the VBA Format function documentation - see the heading User-Defined Date/Time Formats (Format Function) roughly halfway down the page - there's no anchor to link to directly):

Format(TimeValue(Now), 'hh:mm AM/PM')

Valid choices for different displays of AM/PM values are:

AM/PM

Use the 12-hour clock and display an uppercase AM with any hour before noon; display an uppercase PM with any hour between noon and 11:59 P.M.

am/pm

Use the 12-hour clock and display a lowercase AM with any hour before noon; display a lowercase PM with any hour between noon and 11:59 P.M.

A/P

Use the 12-hour clock and display an uppercase A with any hour before noon; display an uppercase P with any hour between noon and 11:59 P.M.

a/p

Use the 12-hour clock and display a lowercase A with any hour before noon; display a lowercase P with any hour between noon and 11:59 P.M.

AMPM Use the 12-hour clock and display the AM string literal as defined by your system with any hour before noon; display the PM string literal as defined by your system with any hour between noon and 11:59 P.M. AMPM can be either uppercase or lowercase, but the case of the string displayed matches the string as defined by your system settings. The default format is AM/PM.

Upvotes: 18

Related Questions