After reading this tutorial; you will be able to make your Windows 7 Computer speak the current time and date every time you log on.
You might be interested on other similar automated voice oriented tutorial using VB scripts, like:
- Your computer will greet you with a custom speech
- Your computer will shut down from a right click option with custom speech
- Your computer will speak the current time from right click menu
Let us proceed on how to make your Windows 7 computer speak the current date and time on every start up.
---
Creating the vb script to let your computer speak the current time date
Open Notepad. Write the following things for making your your computer speak and do the things after start up:
Update : Please scroll down to the comments section and do a minute modification collected with literately huge effort by our reader Johnathan Martinez.
Set Sapi = Wscript.CreateObject("SAPI.SpVoice")Sapi.speak "<span style="color: #ff0000;">Welcome back. Today is"</span>Sapi.speak weekdayname(weekday(date))Sapi.speak day(date)Sapi.speak monthname(month(date))Sapi.speak "<span style="color: #ff0000;">The current time is</span>"if hour(time) > 12 thenSapi.speak hour(time)-12elseif hour(time) = 0 thenSapi.speak "<span style="color: #ff0000;">12</span>"elseSapi.speak hour(time)end ifend ifif minute(time) < 10 thenSapi.speak "<span style="color: #ff0000;">o</span>"if minute(time) < 1 thenSapi.speak "<span style="color: #ff0000;">clock</span>"elseSapi.speak minute(time)end ifelseSapi.speak minute(time)end ifif hour(time) > 12 thenSapi.speak "<span style="color: #ff0000;">P.M.</span>"elseif hour(time) = 0 thenif minute(time) = 0 thenSapi.speak "<span style="color: #ff0000;">Midnight</span>"elseSapi.speak "<span style="color: #ff0000;">A.M.</span>"end ifelseif hour(time) = 12 thenif minute(time) = 0 thenSapi.speak "<span style="color: #ff0000;">Noon</span>"elseSapi.speak "<span style="color: #ff0000;">P.M.</span>"end ifelseSapi.speak "<span style="color: #ff0000;">A.M.</span>"end ifend ifend if
Save the file as Speaking Clock.vbs for the example above and do not forget to change the file type from text to All files from drop down menu in Notepad before saving it. Obviously, you can save with any name you like.
The red texts are what the computer will speak. For example, you can change the greetings from “Welcome back” to anything you like.
Double clicking the file will speak as you want.
Automate what the computer will on startup
Automating the script to run so that your computer will speak on each startup can be done in two ways:
- By using task scheduler, like we did to create an alarm clock
- Or by placing it to the startup folder
We will place it in the Startup folder.
Click the Start-Button, choose œAll Programs and you will find it as a folder named Startup. Right Click it and choose Open or Explore:

Copy the VBS file you have created and paste there. You must be logged on as Admin. A security prompt will come, just accept it.
Just restart your Windows 7 computer and you will hear your computer will speak the things you defined in the script.
To disable it, just delete the file from startup folder.
Downloads for Let your Computer Speak current time and date on startup tutorial
As usually the required file for your computer to speak is here for your download.
The rar file is password protected, type thecustomizewindows.com as the password.

Is there a way to change the language?
Surely. Which language?
wondering how you would include this to kick in after playing a song inside a playlist for the alarm clock thru the task sched
Hello i had a question i am using this format to make it speak every hour:
Dim speaks, speech
speaks = “It is ” & hour(time) & ” O’clock”
Set speech = CreateObject(“sapi.spvoice”)
speech.Speak speaks
The problem is it reads it in 24hr and not 12hr format, do you happen to know how to fix that? thank you :)
That means it is bypassing the forced logic. Can you post it on Microsoft Answers forum ? I actually do not use Microsoft Windows anymore…the only last laptop had Win 7, its hard disk has died few weeks ago. Please let me know what actually happened at the end, other users might be helped easily…
i posted it on the forums, but never got a reply =/
That is a big problem of MS forums.
Do you know any programmers or anyone that could look into that and figure out why its reading it in 24hr format even though i have computer set to 12hr?
Honestly I do not know. You can do one thing, do a search with
for any forum. There are some old peoples who have quite good grasp on VB (I unfortunately only saw some post, do know anyone). Other way is to post in StackExchange as question. Possibly you’ll find the person who will correct it.
Hey abishek! just wanted to say thank you very much i managed to find an answer on stackexchange and here is what he said: (it worked btw)
As documented, Hour() returns a number between 0 and 23 representing the current hour. You need to divide the hour modulo 12 to get what you want:
speaks = “It is ” & Hour(Time) Mod 12 & ” o’clock”
You just add Mod 12 after the hour(time). Very much appreciated i will make sure to keep checking your website for help and stuff :)
Ahh…thats great Johnathan :) Thank you so much for visiting back and providing the feedback.
You are welcome for next visit, the input and corrections by the readers are very important. You can have a look at all the right click tricks in this article.
I get an error message on start up 800oa 801 (or something)??
I managed to get the error code: 800AO401
Windows 8.
I don’t think my pc will let me log in as admin, even though it is my pc and I am the only user, but I did not get a prompt box asking.
If anyone knows how to fix this, I would appreciate, as to have the date announced would be useful.?
Why your PC will not allow to login as Admin?
I have no idea, only sometimes, it will not let me do things like save a program (now called apps i believe) in the program folder, I have to save them in downloads folder in documents. I asked dell about this, new pc and all, and the guy said, it is just too dangerous, if I have access.