No entiendo donde usas $a en tu código ?¿?
Para "pasar" una variable por el URL a una pagina (esto lo define el standar CGI y es válido no sólo para PHP sino para ASP, Perl .. etc) .. la sintax sería:
pagina.tal?variable=valor&otravariable=valor ..
Código PHP:
$a="prueba";
echo "<td bgcolor=\"#CCCCCC\" onMouseDown=\"MM_openBrWindow('ventana1.php?celda1=$a','','width=300,height=300')\"><div align=\"center\"></div></td>";
Por ende .. si tu variable es $a .. el 'valor' será ese .. y el nombre de la variable que reciba el script.php que envias será ese 'variable'
A su vez .. PHP discrimina el método de envio .. En un URL es GET (en un formulario puedes usar POST o GET) ..
ventana1.php
Código PHP:
<?
echo $_GET['celda1'];
?>
Si te das cuenta . no uso printF() . .entre otras cosas por queè es un gasto de recursos innecesario. La sintax que usabas (ademas) no era correcta ...
www.php.net/printf
Un saludo,