Bueno, aqui dejo la solucion (en rojo) que despues de 3 horas por culpa de un $ y unas comillas e tenido dolores de cabeza.
 
Ahora me pasa otra cosa, al elegir en el 1er select, se rellena el 2º pero el 1º vuelve a la posicion 1  
  
¿SOLUCION?   
<form name=Frm1 action=MuestraValor.php method=Post>
 
<select name=Puestos onchange = "Cargar()" > 
<?php
$Conexion = odbc_connect('Trabajadores','','*');
$Consulta= odbc_exec ($Conexion, "Select Puesto from Trabajadores"); 
while(odbc_fetch_row($Consulta))
{
$Puesto = odbc_result($Consulta, "Puesto");
echo "<option value=$Puesto>$Puesto";
}
?> 
</select>   <select name=Trabajador> 
<?php
$Conexion = odbc_connect('Trabajadores','','*');
$Consulta2= odbc_exec ($Conexion, "Select * from Trabajadores where Puesto=
'$ PuestoTrab
' "); 
$Nombre = odbc_result($Consulta2, "Nombre"); 
echo "<option value=$Nombre>$Nombre"; 
?> 
</select>
 
<input type=submit value= Probar>
 
</form>   <script language="JavaScript">
function Cargar(){
document.location.href='Consulta.php?PuestoTrab='+ document.Frm1.Puestos.options[document.Frm1.Puestos.selectedIndex].value
}
</script>   
Ahora solo espero que pueda trabajar con los values y text de los selects, sino me pego un tiro...  
 
SALU2.