I have solved this by specifying \multicolumn{ncols}{ p{\tablewidth} }{long sentence...}

And then use a minipage enviroment outside of it

%main.tex
\documentclass{article}
\usepackage{filecontents,catchfile}
\begin{filecontents*}{table.tex}
%table.tex
    \hline
    A &amp; B  &amp; C &amp; D  \\   \hline
    E &amp; \multicolumn{3}{ p{\tablewidth} }{This is generated by excel2latex macro. This is generated by excel2latex macro. This is generated by excel2latex macro. I want to let it auto wrap according to the width of (B+C+D) }   \\      \hline

\end{filecontents*}

\begin{document}

Table test.

\section{Insert a full table}

    \begin{tabular}{|p{2cm}|p{2cm}|p{2cm}|p{2cm}|}
    \hline
    A &amp; B  &amp; C &amp; D  \\   \hline
    E &amp; \multicolumn{3}{p{6cm}|}{This is generated by excel2latex macro. I want to let it auto wrap according to the width of (B+C+D) }   \\      \hline
    \end{tabular}%

\section{ Input the body of table from a separate file}

\CatchFileDef{\mytable}{table.tex}{}% table.tex &gt; \mytable
    \begin{tabular}{|p{2cm}|p{2cm}|p{2cm}|p{2cm}|}
  \mytable
    \end{tabular}%

\end{document}


How to specify the multicolumn width in table header?
I know that black holes are "black" because nothing can escape it due to the massive gravity, but I am wondering if there are any theories as to what happens to the light or mass that enters a black hole and cannot escape. 
