cosi' tiene conto dell' eccezione delle ultime 3 righe
codice:
var ultima=false;

function cambia(obj){
	var vis=(ultima)?'hidden':'visible';
	var col=(ultima)?'transparent':'brown';
	var rObj=(ultima)?ultima:obj;

	rObj.style.backgroundColor=col;

	var trObj=rObj.parentNode;
	if(trObj.getElementsByTagName('TD').length<3){
		while(trObj=trObj.previousSibling){
			if(trObj.nodeType!=3){
				if(trObj.getElementsByTagName('TD').length==3) break;
			}
		}		
	}
	trObj.getElementsByTagName('TD')[2].style.visibility=vis;

	if(ultima){
		ultima=false
		cambia(obj)
	}
	else ultima=obj;
}
da quanto ho capito pero' c'e' una pessima idea di base:
se vuoi far apparire quella descrizione al click sul campo tagli fuori tutti i movimenti nel form via tab;
dovresti gestire focus e blur sui campi e non onclick sulle celle,
non avresti il conseguente problema di "spegnere" cliccando altrove eventuali elementi "accesi", che non e', come pensi, di semplice soluzione...

ciao