The 48-year-old Ballesteros won the British Open in 1979, '84 and '88.
Ballesteros wrote to tournament organizers, saying he wasn't in good enough form to play the July 14-17 tournament at the Old Course at St. Andrews.
'Unfortunately, I am still not at the competitive level I would expect, especially at a venue like St. Andrews, which hosts the best event in the world,' Ballesteros said Thursday.
He hasn't played competitively since his own event, The Seve Trophy, in late 2003, and he injured his knee earlier this year when he slipped on a practice tee.
Olazabal was the highest ranked player to miss out on an exempt place in international qualifying at Sunningdale on Monday.