A much better way. This shows you how to allow the SQL Server Executable instead of the ports. This method works with dynamic ports turned on.
http://greenwireit.com/blog/2013/05/15/microsoft-sql-server-express-windows-firewall-dynamically/
I should have explained more I was kind of tired. Dynamic ports is available but its not turned on by default… by default it uses port 1433 or 1434.