Hola dandreta
Disculpame que no conteste antes 
 
  
primero el tema de los tr: es muy posible que vos tengas que poner nro-1 en la función carga porque en el body tengas algo asi: 
 <table id="carga">
          <tr> 
            <td><b>OPCION SELECCIONADA</b></td>
          </tr><tr> </tr>
        </table> 
ya que la linea 
 nro=tabla.childNodes.length;
 cuenta la longitud de la tabla es decir la cantidad de filas o tr tiene. 
en el caso del deshacer 
pone la linea alert(Cols.length); antes de la linea if (Cols.length>1) y fijate que te devuelve, sino la otra opcion saca la condicion if y que la funcion te quede  
function deshacer(carga)
/* Realizado por valeguz*/
/*Borra el ultimo item de la tabla*/ 
{
  tabla = document.getElementById(carga).tBodies[0];
  nro=tabla.childNodes.length;
  nro--;
  var Cols = tabla.getElementsByTagName("TR");
  Cols[nro].parentNode.removeChild(Cols[nro]);
} 
eso si, te va a borrar hasta la fila "opcion seleccionada" si le siguen oprimiendo deshacer 
Una pregunta tonta: la tabla tiene como nombre de id lo mismo que vos le envias a deshacer? porque si no es asi puede ser que no lo encuentre aunque supuestamente debería dar un error... 
Cualquier cosita a tu disposición 
Saludos 
