Creating a whole interactive calendar for a month in a table could be done I suppose, but it's an awful lot of work for something that might be solved more easily in other ways.
IF you have a constant internet connection when you're teaching, create a Hyperlink on a blank Keynote slide to a web calendar, such as Google Calendar (or perhaps a school district calendar?) and enable it in the slide with Inspector, Hyperlink (blue circle with arrow icon 2nd from the right).

If you don't have web access on your teaching computer while you're teaching, I'd still probably capture a screenshot of the each monthly calendar and use that, updating to the current slide once a month. If you're usually too busy to remember to capture a new calendar on the first of the month, create a whole year of screen captured calendars at one time, add them to separate Keynote slides, and then just 'Skip Slide' all the months you aren't using. Not cool and interactive, but it would solve the problem. You might want to rename the screen captures to the month name before adding them as slides for ease of locating them later.
Since you're teaching foreign languages, in my sample below, I changed my default Google Calendar language to German. (Unfortunately, I left US Holidays enabled, so they aren't 'auf Deutsch', but you get the idea.) Understand that when you switch language in Google Calendar (or other Google app), it will switch ALL of your Google screens to that language, so be sure you remember which 'buttons' to push to change it back to English later!
Bring up your calendar onscreen in your browser and use Command+Shift+3 to capture the whole screen or Command+Shift+4 to capture just a portion of the screen. Once saved, insert the saved calendar into a Keynote slide.

Now, if that's more than you need, if you just want to display the date information in English as current weekday name, monthname, date number, and year, that's pretty simple.
Use the now() or today() function, you can create a simple table and add the following functions in separate cells, beginning each cell entry with the = sign (so the table 'knows' it's a function, and not just text:
=DAYNAME(NOW())
=MONTHNAME(MONTH(NOW()))
=DAY(NOW())
=YEAR(NOW())
And it displays like this on a slide:

Hope that helps!
Message was edited by: kostby