You should always try to grant permissions to a role you've created and then put the appropriate users in that role. If you also want the role to have execute rights on all stored procedures as well, you can simply:
GRANT EXECUTE ON SCHEMA::dbo
Assuming all are in the dbo schema. If you only want functions, the best thing to do is use a query to build the permissions T-SQL for you:
SELECT 'GRANT EXECUTE ON [' + SCHEMA_NAME(schema_id) + '].[' + [name] + '] TO MyRole;'
WHERE type = 'FN';
Then take the code you've generated and execute it.
K. Brian Kelley