Experimental-Elapsed-Timers
Created with Microsoft Excel
by David Alderoty © 2012
This website provides eight software-based elapsed timers,
in the Excel and JavaScript format, free of charge.
The Excel devices require Microsoft Windows and Excel.
All of these timing devices can also
function as countdown timers.
These devices measure time using a number of units, including
days, hours, minutes, seconds, deciseconds, centiseconds,
milliseconds, microseconds, shakes, nanoseconds,
picoseconds, femtoseconds, and attoseconds.
All of these devices, except for numbers 7 and 8, should be
considered experimental, (or created for demonstration purposes).
This is because most computers cannot measure time
with the level of precision implied by the readouts.
To contact the author (David Alderoty) use this
e‑mail address: David@TechForText.com, or left click
on the link below for a website communication form.
Link for a Website Communication Form
Note, the download links for the eight timing devices are
presented after the introductory text, and instructions,
on the lower section of this webpage.
This website also provides LINKS to a number of other websites created by the author that provide free downloads of various types of practical timing devices, and information on time management, which are presented below:
The above is a webpage that lists a number of websites
www.TechForText.com/Time-Management
www.TechForText.com/Timing-Devices-Created-with-Spreadsheet-Software
www.TechForText.com/Project-Timers-and-Calendars
www.TechForText.com/Elapsed-Timers
The Elapsed Timers Are Also Countdown Timers
All of the timing devices from this website measure elapsed time, as soon as you enter a start date and time. If you enter a start date and time that is in the future, the devices function as countdown timers, and when time zero is reached, the device measures elapsed time. With the exception of device 7, all the devices display countdown time with a negative sign, such as -59.84 SECONDS. (Device 7 displays countdown with the words: THE COUNTDOWN TIME IS DISPLAYED BELOW)
A Simplified Description of How These Devices Function
Note, the following is a greatly simplified technical description of how the timing devices presented on this website function. It is certainly not a complete description, which would require many pages of highly detailed text.
The eight timing devices provided by this website were created with Microsoft Excel, and they were electronically converted to JavaScript and HTML code, using specialized software. The conventional formulas and formatting code used to display time in Microsoft Excel has a number of limitations. This includes an inability to display a negative time, which is essentially a countdown time. However, the formulas I created for these devices display both a countdown time with a negative sign, and elapsed time is displayed as soon as time zero is reached. To do this I did not use Excel‘s conventional formatting code, or the conventional Excel formulas, for time with only one exception. Specifically, I used Excel‘s NOW() function, but I had to modify it, as explained below.
I converted the readout produced by the =NOW() function to a number, representing the number of days and fractions of a day in decimals, from the present point in time, to 12 AM January 1, 1900. Actually, Microsoft Excel, normally measures time in this way, but this is concealed from the user, as a result of the formatting code use for time. This formatting cannot handle negative numbers, and it has other limitations as well. Thus, my first goal was to devise the most efficient method of eliminating the formatting code. The most efficient way to do this is to modify the function, by placing &"" on the right side of the function as follows: =NOW()&"". With this technique, words can be placed in between the quotation marks, such as =NOW()&"Days"
When the =NOW() function is modified as indicated above, it displays time in a number format, which is based on a count of days from 12 AM January 1, 1900. (January 1, 1900 is day one.) For example, on Thursday, August 16, 2012, 2:58:27 PM, the modified function =NOW()&"" displayed 41137.6239273148 days. This number can be converted to just about any unit of time, by multiplying it by the correct factor, such as 24 for hours, (24)(60) for minutes, (24)(60)(60) for seconds. It can even be separated into Days, Hours, Minutes, and Seconds and presented on the same display, which I did with device 8.
The same technique described above, was also used for the input device for the start time and start Date. Actually, the user enters the start date and time in the conventional format, but I essentially programmed the Excel device to convert it into a single number based on the count of the number of days, using 12 AM January 1, 1900 as day one.
With the above technique, I end up with two numbers, which can be subtracted from each other. When the number that represents the start time is smaller than the number that represents the current time the subtraction results in a positive number. For ILLUSTRATION PURPOSES, this idea can be represented with the following formula:
Current time – Start = ELAPSED TIME, if the result is negative it is the COUNTDOWN TIME.
When the start time is in the future, it will be larger than the number that represents the current date and time. With the above formula this will result in a negative number, which represents the countdown time. The concept can be illustrated with the following two examples.
AN EXAMPLE OF THE ELAPSED TIME: If the start time is Thursday, August 16, 2012, 5:30:43 PM, the equivalent number in terms of days from 12 AM, January 1, 1900, is 41137.7296668982 Days. If the current time is Friday, August 17, 2012, 5:30:43 PM, the equivalent number in terms of days from 12 AM, January 1, 1900, is 41138.7296668982 days. These two numbers can be subtracted from each other, as indicated with the above formula highlighted in yellow. This results in an elapsed time of 1 Day.
AN EXAMPLE OF THE COUNTDOWN TIME: If the numbers presented above were reversed the result would be the countdown time, with a negative number. Specifically, let us assume that the start time was set as Friday, August 17, 2012, 5:30:43 PM, which can be represented by 41138.7296668982 days. Now let us assume the start time was set one day in advance on Thursday, August 16, 2012, 5:30:43 PM, which can be represented by 41137.7296668982 days. Note that the start time is larger than the current time with this example. When the subtraction is performed as indicated by the formula highlighted in yellow above, the result is a negative number, which is -1 day. This calculation automatically changes with time, and with the above example, it will reach zero on Friday, August 17, 2012, 5:30:43 PM. Then, the number will be positive, which represents the lapsed time.
The technique described above is very efficient, but I devised another technique which also circumvents the limitations of Microsoft Excel's formatting code for time. I used this alternative technique for Timing device 7. This involved using Microsoft Excel formatting code for a portion of the calculations. However, I had to create two versions of the formula, one for elapsed time and another for the negative countdown time. The two formulas are essentially controlled by an automatic switching mechanism, which disables one formula, and enables the other, based on whether the initial calculation is positive or negative. (I created the switching mechanism with Excel’s IF FUNCTION.) If the number is positive, it is transmitted to the display with the words: The elapsed time is displayed below. However, if the initial calculation results in a negative number, it is converted to a positive number, and transmitted to the display with the words: THE COUNTDOWN TIME IS DISPLAYED BELOW.
Timing Devices for Experimental and Demonstration Purposes
Keep in mind that the timing devices from this website, were primarily created for experimental and demonstration purposes, with the exception of devices 7 and 8, which have practical applications. The level of precision provided by the readouts goes beyond the capability of most computers, and most operating systems. In addition, I do not have the equipment to measure the true accuracy of these devices, some of which measure time in trillionths of a second, and they were not designed for practical applications. However they are most likely accurate within 100th of a second. When measured and compared with conventional timing devices, all of the devices from this website are perfectly accurate. Thus, they may have practical utility if you are timing human activities, but not if you are timing the duration of a laser beam. (POSSIBLY, with the appropriate computer set up, you might be able to time the duration of laser beams, especially with the JavaScript versions, but the timing devices provided by this website were not designed or tested for this purpose.)
Nevertheless, these timing devices appear to actually be measuring time with extraordinarily tiny units. For example, a readout that I got from one of the devices was 4999999911524.355 PICOSECONDS. Note the three decimal places on the end of the number. This number is a little less than 5 trillion, and it represents a time interval of less than 5 seconds. However, from a practical perspective, I would only consider the first three digits truly accurate, which rounds down to 5 trillion picoseconds.
For those who are excessively concerned with significant digits, I created a rounding mechanism that controls the number of digits that are displayed, in all of the timing devices, except for 7. (The smallest unit displayed in device 7 is the second.) The mechanism consists of a white input box, where the user enters a number representing the number of digits to display. For example, if you enter 5, no more than five decimal places will be displayed. If you enter zero there will be no decimal places displayed. You can also enter minus numbers in this rounding mechanism. For example, if you enter -12, with 67431686436722.342 PICOSECONDS, it will be rounded to 67000000000000 PICOSECONDS. If you enter, -11 the display will show 67400000000000 PICOSECONDS.
Because of the tiny units that are use with some of these timing devices, the numbers are automatically converted to scientific notation when they go beyond approximately 20 digits. To reach fantastically high numbers only requires a few minutes, with some of these devices. The scientific notation is displayed with an upper case E in the Excel versions, and a lower case e in the JavaScript devices. See the following examples:
Excel version: 4.0684999999869614E+22 ATTOSECONDS
JavaScript version: 4.0684999999869614e+22 ATTOSECONDS
General Instructions
(The following applies to all eight devices, but there are more instructions on each device.) All of the elapsed timers, from this website are easy to use. You just TYPE IN a start date, and enter a start time, with pull-down menus. After you enter a start date and time, you must remember to save the settings, if you want to close the software and reopen it at a later point in time, with the same settings. The procedures for saving the Excel and JavaScript versions are different, and they are explained below.
You can save the Excel version, in the conventional way that you save an Excel spreadsheet. However, the easiest way to save the Excel version is to press the s key WHILE HOLDING DOWN THE CTRL KEY.
The settings in the JavaScript version can only be saved if you open it with the Firefox Web Browser. To save the settings, with Firefox, press the s key WHILE HOLDING DOWN THE CTRL KEY. When this is done, a dialog box opens, with a specific location on your computer, such as your document section, or desktop. Take note of the location, or change it to the location you prefer, and then click on the save button on the Firefox dialog box.
Once the start time and start date is set, and the software is saved, as explained above, it can be closed and reopened, and it will accurately display the elapsed time or countdown time, even if the settings were entered many minutes, hours, days, or even years ago.
Actually, the upper and lower limits for start times and start dates for the devices from this website are the default for most timing devices created with Microsoft Excel. The defaults go way beyond the limits of conventional elapsed timers, which may have a range that can be express in hours, but the Excel ranges can be express in centuries. See below.
The upper limit for the timing devices provided by this website is December 31, 9999, at 11:59 PM, which is well over 7985 years from now. This is based on tests that I carried out using countdown time, with December 31, 9999, at 11:59 PM as time zero. The timing devices were counting down time accurately, when compared to a conventional software-based computer clock, with a second hand. The timing devices were in perfect sync with the second hand of the computer clock, in spite of the fact that they were set almost 8000 years in the future.
The lower limit for a start date and time, for the timing devices is January 1, 1900, at 12:00 AM. This was tested in a similar way as the above, except elapsed time was obviously involved.
Important Note about Timing Devices
Created With Spreadsheet Software
It is important to understand that timing devices that were created with Microsoft Excel, or similar spreadsheet software, must be updated to obtain the correct time, date, elapsed time, or countdown time. For example, if a timing device created with spreadsheet software is opened on your computer on August 23, 2012, at 4:26 PM, it will indicate the above time and date. This date and time will not change, even if you leave the software opened on your computer for a week, unless you update it. You can update the spreadsheet versions of the elapsed timers presented on this website, by placing the cruiser in a green box, and pressing the delete key. You can also update the time by entering or deleting numbers, or by opening and closing the software.
When a JavaScript timing device is created with spreadsheet software, the concept described above also applies. That is the software will not register any changes in time unless it is updated as indicated above. However, with the JavaScript versions, I provide update buttons, which the user can press to update the date, time, elapsed time, or countdown time.
Basic Description of The eight Downloads
The eight timing devices from this website are available in JavaScript and the Microsoft Excel format. The timing devices are provided free of charge, by downloading in zipped folders. Each zipped folder contains one JavaScript version, and two Excel versions, which are for Excel 2003, and Excel 2007-2010. In addition, there are two Excel versions that have the words Formula Study on the filename. These versions provide direct access to the formulas used to create the timing devices, which is provided for individuals that are interested in the technical aspects. The JavaScript code comprising each timing device is also provided in each zipped folder, in a standard text format, with the file extension: .txt. You can duplicate a timing device, by cutting and pasting the JavaScript code into your HTML webpage, but you must retain the copyright notice. (This requires an HTML editor, and basic skills with HTML.)
The Excel devices require Windows and Microsoft Excel, and the JavaScript devices should function with any modern operating system, and web browser, but they were only tested with Windows.
The download links are presented below. Each device is described below, this description include some of the formulas used in the software. After downloading you should remove the files from the zipped folder before you use them. This applies to both the Excel and JavaScript versions.
DEVICE 1: Experimental Elapsed Timer for Multiple Units
If you want to download device 1 left click on these words.
This software-based elapsed timer measures and displays time, with a number of units (simultaneously) including: days, hours, minutes, seconds, deciseconds, centiseconds, milliseconds, microseconds, shakes, nanoseconds, picoseconds, femtoseconds, and attoseconds. This software has a separate display for each of the units mentioned above. This device was created primarily to demonstrate the display in measurement of the units of time mentioned above.
If you want device 1 in an online JavaScript format left click on these words. This will immediately open in your web browser. Note, device 1, is also embedded directly in this webpage, which is presented after the downloads several paragraphs below.
MORE INFORMATION ON DEVICE 1) Device 1 has 16 displays. Each of the displays has a formula that calculates the elapsed time and/or countdown time. These formulas are listed below. I created these formulas, to function in Microsoft Excel, and they are somewhat unconventional in structure. The formulas will not function in a conventional Excel spreadsheet, because they are dependent on other formulas, input boxes, and pull-down menus. In the following formulas the function, NOW() represents the current date and time, and -$D$41 represent the start time and start date entered by the user.
=ROUND((NOW()-$D$41), D)&" DAYS"
=ROUND((NOW()-$D$41)*24, D)&" HOURS"
=ROUND((NOW()-$D$41)*24*60, D)&" MINUTES"
=ROUND((NOW()-$D$41)*24*60*60, D)&" SECONDS"
=ROUND((NOW()-$D$41)*24*60*60*10, D)&" DECISECONDS"
=ROUND((NOW()-$D$41)*24*60*60*100, D)&" CENTISECONDS "
=ROUND((NOW()-$D$41)*24*60*60*1000, D)&" MILLISECONDS"
=ROUND((NOW()-$D$41)*24*60*60*1000000, D)&" MICROSECONDS "
=ROUND((NOW()-$D$41)*24*60*60*100000000, D)&" SHAKES"
=ROUND((NOW()-$D$41)*24*60*60*1000000000, D)&" NANOSECONDS"
=ROUND((NOW()-$D$41)*24*60*60*1000000000000, D)&" PICOSECONDS"
=ROUND((NOW()-$D$41)*24*60*60*1000000000000000, D)&" FEMTOSECONDS"
=ROUND((NOW()-$D$41)*24*60*60*1000000000000000000, D)&" ATTOSECONDS"
The following three formulas are also in device 1. These formulas are based on cells that were renamed as: DAYS, HOURS, MINUTES, and SECONDS. In these renamed cells, the elapsed time or countdown time is separated into days, hours, minutes, and seconds. This is carried out with a number of other formulas that are not shown.
=Days&" Days, "&Hours&" Hours, "&Minutes&" Minutes"
=Days&" Days, "&Hours&" Hours, "&Minutes&" Minutes, and Seconds "&ROUNDDOWN(Seconds, 0)
=Days&" Days, "&Hours&" Hours, "&Minutes&" Minutes, and Seconds "&ROUNDDOWN(Seconds, RD)
DEVICE 2: Experimental Elapsed Timer for
Seconds and Fractions of a Second.
If you want to download device 2 left click on these words.
This elapsed timer measures time in seconds, and fractions of a second. The formula used to display the elapsed time or countdown time is presented below in red type:
=ROUND((NOW()-D39)*24*60*60, D)&" SECONDS"
DEVICE 3: Experimental Elapsed Timer for
Milliseconds and Fractions of a Millisecond
If you want to download device 3 left click on these words.
This elapsed timer measures time in milliseconds, and fractions of a millisecond. A millisecond is 1000th of a second. The formula used to display the elapsed time or countdown time is presented below in red type:
=ROUND((NOW()-D39)*24*60*60*1000, D)&" MILLISECONDS"
DEVICE 4: Experimental Elapsed Timer for
Microseconds and Fractions of a Microsecond.
If you want to download device 4 left click on these words.
This elapsed timer measures time in microseconds, and fractions of a microsecond. A microsecond is one millionth of a second. The formula used to display the elapsed time or countdown time is presented below in red type:
=ROUND((NOW()-$D$39)*24*60*60*1000000, D)&" MICROSECONDS "
DEVICE 5: Experimental Elapsed Timer for Nanoseconds
If you want to download device 5 left click on these words.
This elapsed timer measures and displays time in nanoseconds, which is 1 billionth of a second. The formula used to display the elapsed time or countdown time is presented below in red type:
=ROUND((NOW()-$D$41)*24*60*60*1000000000, D)&" NANOSECONDS"
DEVICE 6 Experimental Elapsed Timer for Picoseconds
If you want to download device 6 left click on these words.
This elapsed timer measures time in picoseconds, which is one trillionth of a second. The formula used to display the elapsed time or countdown time is presented below in red type:
=ROUND((NOW()-$D$39)*24*60*60*1000000000000, D)&" PICOSECONDS"
DEVICE 7: Elapsed Timer and Countdown Timer
Measures Time in Days, Hours, Minutes, and Seconds
If you want to download device 7 left click on these words.
Unlike the timing devices presented above; this software is a practical timing device, and it measures time in days, hours, minutes, and seconds. This device becomes a COUNTDOWN timer, if you enter a start time that is in the future, in the same way as the other devices presented above. However, this device uses words to indicate elapsed time and countdown time, which are: The elapsed time is displayed below, and THE COUNTDOWN TIME IS DISPLAYED BELOW Device 7 uses two formulas to display the elapsed time or countdown time, which are presented below in red type:
=ROUND(D40,0)&" day, "
=IF($C$35>NOW(), C25, (NOW()-$C$35))
DEVICE 8 is a Practical Device Similar to the Above
If you want to download device 8 left click on these words
This software-based elapsed timer measures and displays time in days, hours, minutes, and seconds and fractions of a second. It is similar to device 7, but it functions on a somewhat different principle, with a special set of formulas I devised. These formulas separate the elapsed time, or countdown time, into days, hours, minutes, and seconds. The formulas are in separate cells which are named: Days, Hours, Minutes, and Seconds. The countdown time is presented with negative numbers. This concept eliminates the need to use Excel's formatting code for time, which cannot handle negative numbers. The formula in the display is written in terms of the cell names, which are Days, Hours, Minutes, and Seconds. This formula is presented below in red type:
=Days&" Days, "&Hours&" Hours, "&Minutes&" Minutes, and Seconds "&ROUNDDOWN(Seconds, RD)
Below There is an Embedded Version of Device 1