I have been using the {standalone} package exactly for this purpose. The main files should use:
\documentclass[preview=false]{standalone}
or load the standalone package near the beginning of the preamble. The complete preamble needed by the sub files should be loaded by the main document.
In the example below, I have used the filecontents package just to be able to wrap the sub file into one code sample. So, the file subfile.tex here is a sub file, in this case it is composed of a tikz figure. This file can be compiled on its own. The main file is loading:
\usepackage{standalone}
\usepackage{tikz}
and then simply uses \input{subfile} to import the sub file.
Code:
\documentclass{article}
\usepackage{standalone}
\usepackage{tikz}
\usepackage{filecontents}
\begin{filecontents}{subfile.tex}
\documentclass{article}
\usepackage{tikz}
\begin{document}
\begin{tikzpicture}
\coordinate (EllipseOrigin) at (0,0);
\newcommand*{\XRadius}{4.0}
\newcommand*{\YRadius}{3.0}
\draw [blue, thin, ->] (-5,0) -- (5,0) node [right] {$x$};
\draw [blue, thin, ->] (0,-4) -- (0,4) node [above] {$y$};
\draw [red, ultra thick]% Graph Ellipse
(EllipseOrigin) ellipse [x radius=\XRadius,y radius=\YRadius];
\end{tikzpicture}
\end{document}
\end{filecontents}
\begin{document}
\input{subfile}
\end{document}
There is also the subpreambles package option to the standalone class which allows you to use the preamble form the sub files. So if you can not have one preamble in the main file for all your subfiles, perhaps this might be a useful option.
There is also the combine package, which also lets you combine separate documents into one document.
standalonepackage is more for smaller things like picture environments. This looks more like a case for using thecombineclass. – Martin Scharrer Dec 04 '11 at 13:00