Well, this is built up on an answer to Hide proof environment for restructuring. I gotta go now, I'll comment the code later.
\documentclass{article}
\newcounter{exsheetnumber}
\newcounter{onlysheet}
% this is (moreorless) whatever environment defition you want
\newenvironment{innerexsheet}{
\paragraph{Sheet no.\@ \arabic{exsheetnumber}}
}{\textit{End of sheet.}}
\makeatletter
% `killcontents` environment removes all its contents
\usepackage{environ}
\NewEnviron{killcontents}{}
% `xkillcontents` does the same as `killcontents`
% and additionally it restores the correct definition of `exsheet`
\newenvironment{xkillcontents}
{\killcontents}
{\endkillcontents
\global\let\exsheet\origexsheet
\global\let\endexsheet\endorigexsheet
}
% the environment `exsheet` itself:
\newenvironment{exsheet}{
\stepcounter{exsheetnumber}
\ifnum\value{onlysheet}=\value{exsheetnumber}
% if we wabt to display the environment, we just use it
\innerexsheet
% and we use its end as well
\let\endexsheet\endinnerexsheet
% this is for the rest to work
\let\reserved@a\relax
\else
% if we don't want to display anything, we step out of `exsheet`,
\end{exsheet}
% then we re-define `exsheet` to be `xkillcontents`
\let\exsheet\xkillcontents
\let\endexsheet\endxkillcontents
% and we step in `exsheet` again, just we have to do it after `\fi`
\def\reserved@a{\begin{exsheet}}
\fi
\reserved@a
}{}
% and we save the correct definition of `exsheet` as `origexsheet`
\let\origexsheet\exsheet
\let\endorigexsheet\endexsheet
\makeatother
\begin{document}
\setcounter{onlysheet}{5}
\begin{exsheet} ONE \end{exsheet}
\begin{exsheet} TWO \end{exsheet}
\begin{exsheet} THREE \end{exsheet}
\begin{exsheet} FOUR \end{exsheet}
\begin{exsheet} FIVE \end{exsheet}
\begin{exsheet} SIX \end{exsheet}
\begin{exsheet} SEVEN \end{exsheet}
\end{document}
\documentclass{...}and ending with\end{document}. – karlkoeller Oct 31 '13 at 09:34