Microsoft KB Archive/141536

= ACC: How to Convert Short Time Format to Different Formats =

Article ID: 141536

Article Last Modified on 1/19/2007

-

APPLIES TO


 * Microsoft Access 1.0 Standard Edition
 * Microsoft Access 1.1 Standard Edition
 * Microsoft Access 2.0 Standard Edition
 * Microsoft Access 95 Standard Edition
 * Microsoft Access 97 Standard Edition

-



This article was previously published under Q141536



Moderate: Requires basic macro, coding, and interoperability skills.



SUMMARY
This article shows you how to create sample functions that you can use to format the Format property's Short Time setting to its decimal equivalent, to convert minutes to Short Time, or to convert Short Time to minutes.

This article assumes that you are familiar with Visual Basic for Applications and with creating Microsoft Access applications using the programming tools provided with Microsoft Access. For more information about Visual Basic for Applications, please refer to your version of the "Building Applications with Microsoft Access" manual.

NOTE: Visual Basic for Applications is called Access Basic in Microsoft Access versions 1.x and 2.0. For more information about Access Basic, please refer to the "Introduction to Programming" manual in Microsoft Access version 1.x or the "Building Applications" manual in Microsoft Access version 2.0



Converting Short Time to a Decimal Format
The following sample function converts Short Time to a decimal format. In decimal format, valid time values range from .0(00:00:00) to 999999(23:59:59). The numeric value represents a fraction of one day. You can convert the numeric value into hours, minutes, and seconds by multiplying the numeric value by 24. This is demonstrated in step 2. To create the sample function, follow these steps:

 Create a module and type the following line in the Declarations section if it is not already there:

Option Explicit

  Type the following procedure: Function timetodec (mytime) timetodec = Cdbl(mytime) * 24 End Function  To test this function, type the following line in the Debug window (or Immediate window in versions 1.x and 2.0), and then press ENTER:

? timetodec(#6:30#)

Note that the Debug window returns 6.5.

NOTE: If you do not multiply Cdbl(mytime) by 24, the Debug window returns 0.270833333333333

Converting Minutes to Short Time Format
To create a sample function that converts minutes to the Short Time format, follow these steps:

 Create a module and type the following line in the Declarations section if it's not already there:

Option Explicit

  Type the following procedure.

NOTE: In the following sample code, an underscore (_) at the end of a line is used as a line-continuation character. Remove the underscore from the end of the line when re-creating this code in Access Basic. Function mintotime (myminute) mintotime = myminute \ 60 & ":" & Format((Abs(myminute Mod _         60)),"00") End Function </li> To test this function, type the following line in the Debug window (or Immediate window in versions 2.0 and 1.x), and then press ENTER:

? mintotime(390)

Note that the Debug window returns 6:30.</li></ol>

Converting Short Time to Minutes
To create the sample function that converts Short Time to minutes, follow these steps:

 Create a module and type the following line in the Declarations section if it's not already there:

Option Explicit

</li>  Type the following procedure: Function timetomin (mytime) timetomin = CInt(CDbl(mytime) * 24 * 60) End Function </li> To test this function, type the following line in the Debug window (or Immediate window in versions 2.0 and 1.x), and then press ENTER:

? timetomin(#6:30#)

Note that the Debug window returns 390.</li></ol>

<div class="references_section">