ACC: How to Convert Short Time Format to Different Formats

ID: Q141536

The information in this article applies to:

SUMMARY

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

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

MORE INFORMATION

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:

1. Create a module and type the following line in the Declarations section

   if it is not already there:

      Option Explicit

2. Type the following procedure:

      Function timetodec (mytime)
         timetodec = Cdbl(mytime) * 24
      End Function

3. 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:

1. Create a module and type the following line in the Declarations section

   if it's not already there:

      Option Explicit

2. 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

3. 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.

Converting Short Time to Minutes

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

1. Create a module and type the following line in the Declarations section

   if it's not already there:

      Option Explicit

2. Type the following procedure:

      Function timetomin (mytime)
         timetomin = CInt(CDbl(mytime) * 24 * 60)
      End Function

3. 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.

REFERENCES

For more information about calculating time values, please see the following articles in the Microsoft Knowledge Base:

   ARTICLE-ID: Q130514
   TITLE     : ACC: Calculating, and Comparing Date/Time Data

   ARTICLE-ID: Q88657
   TITLE     : ACC: Storing, Calculating, and Comparing Date/Time
               Values

For more information about how to format Date/Time data types, search the Help Index for "formatting dates," or ask the Microsoft Access 97 Office Assistant.

Additional query words:

Keywords          : kbusage
Version           : 1.0 1.1 2.0 7.0 97
Platform          : WINDOWS
Hardware          : x86
Issue type        : kbhowto

Last Reviewed: November 20, 1998