Dalek, the option is to read PDF in your code written in Java or C# (or some other .NET language). Then you can present the PDF data as some text you can import in Excel or directly create an excel file using Microsoft Office interop
, in this case its better to use .NET (well, in all cases it's better to use .NET, just some people would prefer Java :-)). Apparently, another input should be some mapping rules you want to apply when generating output.
Why did I mentioned just Java and .NET? Because of the most recommended product called iText for Java, see http://en.wikipedia.org/wiki/IText
There is also a .NET port called iTextSharp, see http://sourceforge.net/projects/itextsharp/
I believe you can find out from MSDN how to work with Excel in .NET. How about that?