Hallo,
Das ganze JS-Skript wird erst am Ende des HTML-Skriptes aufgerufen!
Die Elemente sind frühestens sicher vorhanden, nachdem der Eventhandler onload aktiv geworden ist. Gerade eine Tabelle braucht eventuell, je nach Komplexität, längere Zeit, bis sie gerendert ist. Packe also das JavaScript in eine Funktion und rufe diese per:
<body onload="DeineFunktion();">
auf.
viele Grüße
Axel