This is a (minor) bug caused by the automatic wrapping of datasets as "PyDatasets", which makes them act as sequences and fall down a different code path in functions such as exportExcel that accept both single elements and lists.
The fix is extremely simple; change:
system.dataset.exportExcel(fName, 1, tablet1)
to:
system.dataset.exportExcel(fName, 1, [tablet1])
To explicitly pass a list of datasets into the function.
We're planning to address this and related issues (e.g. with toExcel) in an upcoming 8.3 release, but it's not the highest priority since the workaround is so easy.
That aside, I'll make an obligatory mention that you should avoid Python/Jython's stdlib datetime and prefer to use functions from the system.date package, for your sake down the road for maintenance. It's not a big deal for simple string formatting operations as you have here, but for any complicated date math you want to avoid datetime.
EDIT:
There's the original, knew this felt familiar: