Try this function: http://www.transformationpowertools.com/wordpress/automatically-shorten-manual-excerpt
Or if you have many different excerpt sizes or want to show an exerpt outside the loop use functions like these: http://pastebin.com/aUZuQrZy
put them in your functions.php
And call the functions like this in your theme's template file:
// inside the loop
my_excerpt(); // just a regular WordPress excerpt (55 words)
my_excerpt(30); // 30 words with formatting (<p>this is an excerpt ... [...]</p>)
get_my_excerpt(30); // 30 words without formatting (this is an excerpt ... [...])
// outside the loop
// pass a Post ID to the function (required outside the loop)
my_excerpt(30, 22); // 30 word excerpt of Post with ID 22
get_my_excerpt(30, 22); // 30 word excerpt of Post with ID 22
The functions both have two argument you can use
my_excerpt($excerpt_length, $Post_id);
These functions affect also the manual excerpt. That's why they strip all html tags from the excerpt content. Otherwhise it might break your site