Estás intentando levantar las celdas antes de que sean cargadas por el DOM. Podés hacer algo mucho más sintético dejando tu JS de la siguiente manera:
    
Código Javascript
:
Ver originalvar columna=new Array();
columna[0]=1;
columna[1]=2;
columna[2]=3;
columna[3]=4;
columna[4]=5;
columna[5]=6;
var filas=new Array();
filas[0]=1;
filas[1]=2;
filas[2]=3;
filas[3]=4;
filas[4]=5;
var tabla=new Array();
tabla[0]=columna;
tabla[1]=filas;
         
function crearTabla(){
    var tbl = document.getElementById("tabla");
    var tblBody = document.createElement("tbody");
    for (var i = 0; i < columna.length; i++) {
        var fila = document.createElement("tr");
        for (var j = 0; j < filas.length; j++) {
            var celda = document.createElement("td");
 
            celda.onclick = function(){
                if(this.style.background=='green'){
                    this.style.background='orange';
                }else{
                    this.style.background='green';
                } 
            }
 
            var textoCelda = document.createTextNode(i+"-"+j);
            celda.appendChild(textoCelda);
            fila.appendChild(celda);
        }
        tblBody.appendChild(fila);
    }
    tbl.appendChild(tblBody);
    tbl.setAttribute("border", "2");
}
  
Y eliminando el llamado a functionTabla del click en tu tabla (valga la redundancia):  
 Código HTML:
 <table id="tabla" onclick="funcionTabla()"></table> <!-- Elimina el llamado -->
<table id="tabla"></table> <!-- Que quede así --> 
 Saludos :)