The first part of your trip involves getting to San Juan. San Juan is the main hub for the Caribbean region, and most airlines offer regular flights from major cities. American Airlines in particular has great service to San Juan. Once you are there, what's the next step?
The simplest way to get from San Juan to Veiques is to take a small plane over to the island. This flight takes less than twenty minutes. Two or three companies offer regular service between the San Juan International Airport and the Virgin Islands. These small commuter airlines are down at the southern end of the San Juan Airport, in Terminal B, and the round trip fare is around $160.00. To be safe, allow at least an hour to move between the two terminals and to check in for the small plane. If it's your first visit, make it an hour and a half.
If your plans include a visit to old San Juan, an interesting alternative might be to book your flight from the Isla Grande airport. This was the original airport for San Juan, and, like Midway in Chicago, it's practically in the middle of the city - only a mile or so from Old San Juan. Vieques Air Link offers inexpensive service from Isla Grande to Vieques.
Either way, this is usually our favorite part of the trip. These planes fly low enough that you can really see the countryside as you travel over the eastern end of Puerto Rico and then across the water to Vieques. The route hugs the coastline and offers spectacular views of the mountains in the El Yunque Rainforest National Park.
If you have plans to travel around the main island before going to Vieques, and if you happen to be in Fajardo, consider the ferry from Fajardo to Vieques. The ferry is very inexpensive, just $2.00 per person, and it's an interesting ride. The catch, for most people, is getting to Fajardo, (which is 40 miles east of San Juan). If your trip begins at the San Juan airport, the only simple, convenient way to get to the ferry dock would be by taxi. This would cost about $75.00. You might want to save the ferry for your second visit.
An alternative to the ferry, if you are near Fajardo, would be to fly over from Cieba. Cieba is about 2-3 miles south of Fajardo, and it is home to the former Roosevelt Roads Naval Station. The naval base is currently decomissioned and the airfield has been converted to civilian use serving eastern Puerto Rico and the islands. This airport is at the most eastern tip of Puerto Rico, and it is so close to Vieques that the flight barely lasts ten minutes. Vieques Air Link offers inexpensive flights between Cieba and Vieques.