I would also suggest looking into:
Bus/Air:
Bus to Seville Estacion das Armas, C4 local bus to Prado Bus Station, Bus to Seville Airport and then Vueling.com to Barcelona.
I routed some people this way earlier this year during the ash crisis.
Bus/Air
Renex bus to Lisbon Gare Oriente, Bus or Taxi 5/10 minutes to Lisbon Airport, Vueling.com to Barcelona.
Renex timetable in pdf format: http://bit.ly/bfjtbB